...
- RDK-WiFi-HAL WPS Functions:
- The HAL typically provides functions like
wifi_pushButtonPBC() - These functions handle the communication with hostapd
- hostapd Control Communication:
- hostapd 2.10 provides a control interface via Unix domain sockets
- RDK-WiFi-HAL connects to this socket and sends "WPS_PBC" commands
- nl80211 Commands Used:
- hostapd uses
NL80211_CMD_START_WPS with attributes:NL80211_ATTR_IFINDEX: Specifies the wireless interfaceNL80211_ATTR_WPS_MODE: Set to NL80211_WPS_PBC for push button method
- Event Monitoring:
- WPS events flow back from the driver → nl80211 → hostapd → RDK-WiFi-HAL
- These events include connection attempts, successful registrations, and timeouts
Communication Flow for WPS PBC
- Application Layer → RDK-WiFi-HAL:
- Your application makes calls to the RDK-WiFi-HAL API
- These calls are standardized functions in the HAL to trigger WPS
- RDK-WiFi-HAL → libhostapd:
- The HAL translates your request into specific hostapd commands
- It handles the complexity of connecting to and communicating with hostapd
- libhostapd → nl80211:
- hostapd uses the nl80211 interface to communicate with the kernel
- It formats the appropriate Netlink messages to trigger WPS PBC
- nl80211 → Driver:
- The kernel's nl80211 subsystem passes commands to your WiFi driver
- The driver activates the WPS PBC mode on the hardware
{"serverDuration": 124, "requestCorrelationId": "fc4f096e19500d1b"}