aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* tests: Pass apdev to HostapdGlobal() in ap_add_with_driverJanusz Dziedzic2016-04-241-2/+7
| | | | | | This is needed for running the test with a remote host. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Use hapd from hostapd.add_ap() in eap_connect()Janusz Dziedzic2016-04-242-256/+251
| | | | Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Use hapd from hostapd.add_iface()Janusz Dziedzic2016-04-243-11/+4
| | | | | | Since add_iface() now returns the correct hapd, just use it. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev to HostapdGlobal()Janusz Dziedzic2016-04-245-7/+7
| | | | | | This can be used to work with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Replace HostapdGlobal() + remove() with hostapd.remove_bss()Janusz Dziedzic2016-04-246-25/+17
| | | | | | This can be used to work with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Use hostapd.add_ap() instead of HostapdGlobal() (DFS)Janusz Dziedzic2016-04-241-7/+1
| | | | | | | This makes the DFS test cases that use start_dfs_ap() more usable for testing with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Use hostapd.remove_bss() instead of HostapdGlobal() (WPS)Janusz Dziedzic2016-04-241-6/+3
| | | | | | This makes ap_wps_twice more usable for testing with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Use hostapd.add_ap() instead of HostapdGlobal() (PSK)Janusz Dziedzic2016-04-241-7/+1
| | | | | | This makes ap_cli_order more usable for testing with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Remove HostapdGlobal() use from invalid_ap()Janusz Dziedzic2016-04-241-15/+6
| | | | | | | Pass apdev to instead of HostapdGlobal() to invalid_ap() to make the dynamic AP test cases more useful for testing with remove hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Remove direct HostapdGlobal() useJanusz Dziedzic2016-04-241-30/+11
| | | | | | | | Use hostapd.add_ap() and hostapd.remove_bss() to avoid direct HostapdGlobal() use in some of the dynamic AP test cases to make them more usable for testing with remote hosts. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Return hapd when add_bss() and add_iface() are usedJanusz Dziedzic2016-04-241-0/+2
| | | | | | Return hapd from add_bss() and add_iface() while we can next use it. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev param to HostapdGlobal()Janusz Dziedzic2016-04-241-11/+13
| | | | | | | Pass apdev param to HostapdGlobal() to support operating with a remote test host. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev to hostapd.add_bss()Janusz Dziedzic2016-04-246-39/+68
| | | | | | | | Pass apdev param to hostapd.add_bss(). Kill hardcoded phy param and get phy base on apdev. These are needed to support operation with a remote test host. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev to hostapd.add_iface()Janusz Dziedzic2016-04-244-6/+14
| | | | | | | Pass apdev param to hostapd.add_iface() to support operation with a remote test host. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev to hostapd.terminate()Janusz Dziedzic2016-04-241-2/+9
| | | | | | | Pass apdev dictionary to hostapd.terminate() to support operation with a remote test host. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* tests: Pass apdev to remove_bss()Janusz Dziedzic2016-04-242-22/+31
| | | | | | | We need this for remote host support. From apdev we can get apdev['hostname'] and apdev['port']. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
* WNM: Fetch scan results before checking transition candidatesKanchanapally, Vidyullatha2016-04-233-26/+151
| | | | | | | | | | | | | On receiving a WNM BSS Transition Management Request frame with a candidate list, fetch the latest scan results from the kernel to see if there are any recent scan results for the candidates and initiate a connection if found. This helps to avoid triggering a new scan in cases where a scan initiated by something else (e.g., an internal beacon measurement report functionality in a driver) has processed Beacon or Probe Response frames without wpa_supplicant having received a notification of such an update yet. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* tests: hostapd assocresp_elementsJouni Malinen2016-04-202-0/+3
| | | | Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* Use a shared helper function for parsing hostapd.conf IEsJouni Malinen2016-04-201-56/+27
| | | | | | | | wpabuf_parse_bin() can be used to take care of parsing a hexstring to a wpabuf and a shared helper function can take care of clearing the previous value when empty string is used. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* Add assocresp_elements parameter for hostapdBala Krishna Bhamidipati2016-04-206-0/+48
| | | | | | | | This new parameter allows hostapd to add Vendor Specific elements into (Re)Association Response frames similarly to the way vendor_elements parameter can be used for Beacon and Probe Response frames. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* OpenSSL: Support OpenSSL 1.1.0 DH opacityJouni Malinen2016-04-191-0/+87
| | | | | | | | The OpenSSL 1.1.0 Beta 2 release made DH opaque and that broke compilation of crypto_openssl.c. Fix this by using the new accessor functions when building against OpenSSL 1.1.0 or newer. Signed-off-by: Jouni Malinen <j@w1.fi>
* FT: Fix RRB for FT over-the-air caseGünther Kelleter2016-04-181-1/+1
| | | | | | | | | | Commit 66d464067d626cc64c5a543a8f91fe58727f4e5e ('FT: Register RRB l2_packet only if FT-over-DS is enabled') disabled RRB l2_packet socket if ft_over_ds is disabled, but this socket is required for FT over-the-air, too (FT key distribution). Enable the socket regardless of ft_over_ds setting if FT is enabled. Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
* systemd: Update service files according to D-Bus interface versionMarcin Niestroj2016-04-182-4/+8
| | | | | | | | | | | | | | systemd service files were supplied with old D-Bus bus name. After service activation systemd was waiting for appearance of specified bus name to consider it started successfully. However, if wpa_supplicant was compiled only with the new D-Bus interface name, systemd didn't notice configured (old) D-Bus bus name appearance. In the end, service was considered malfunctioning and it was deactivated. Update systemd service BusName property according to supported D-Bus interface version. Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
* Assign QCA vendor command/attributes for set/get wifi configurationSunil Dutt2016-04-181-1/+59
| | | | | | | | This adds QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION and QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION and the attributes used with these commands. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* tests: P2P_GROUP_MEMBERJouni Malinen2016-04-181-0/+9
| | | | Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
* P2P: Add P2P_GROUP_MEMBER command to fetch client interface addressPurushottam Kushwaha2016-04-184-0/+61
| | | | | | | | | | | | | | | This allows local GO to fetch the P2P Interface Address of a P2P Client in the group based on the P2P Device Address for the client. This command should be sent only on a group interface (the same peer may be in multiple concurrent groups). Usage: P2P_GROUP_MEMBER <P2P Device Address> Output: <P2P Interface Address> Signed-off-by: Purushottam Kushwaha <pkushwah@qti.qualcomm.com>
* P2P: Trigger event when invitation is acceptedLior David2016-04-182-0/+20
| | | | | | | | | | Trigger an event when wpa_supplicant accepts an invitation to re-invoke a persistent group. Previously wpa_supplicant entered group formation without triggering any specific events and it could confuse clients, especially when operating with a driver that does not support concurrency between P2P and infrastructure connection. Signed-off-by: Lior David <qca_liord@qca.qualcomm.com>
* nl80211: Get rid of unused assignment warningJouni Malinen2016-04-171-0/+2
| | | | | | | | | The os_snprintf() call here cannot really fail in practice, but since its result was stored into the local variable and not checked, static analyzers could warn about the unused assignment. Clean this up by checking the return value. Signed-off-by: Jouni Malinen <j@w1.fi>
* bsd: Set level correctly for non FreeBSD systemsRoy Marples2016-04-171-0/+5
| | | | | | | Only FreeBSD treats rssi as dBm, other BSD have no special meaning to rssi. Signed-off-by: Roy Marples <roy@marples.name>
* tests: Add RRM testsDavid Spinadel2016-04-172-40/+303
| | | | | | | | | | | | | | 1. Add tests for hostapd neighbor database and neighbor report and request. Remove the partial neighbor report request test from test_wpas_ctrl.py since they are now covered more completely in test_rrm.py. 2. Add LCI request test. 3. Add FTM range request signaling test. This covers only the control interface commands and measurement request/response exchange for now. Full end-to-end functionality requires support of station reporting RRM capability. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* RRM: Modify the processing of a received neighbor reportIlan Peer2016-04-171-6/+94
| | | | | | | | | | | | Parse a received neighbor report and report for each neighbor report the data received for it: RRM-NEIGHBOR-REP-RECEIVED bssid=<BSSID> info=0x<hex> op_class=<class> chan=<chan> [lci=hex] [civic=hex] Note that this modifies the previous format that originally reported only the length of the received frame. Signed-off-by: Ilan Peer <ilan.peer@intel.com>
* SME: Add support for global RRM flagBeni Lev2016-04-171-3/+4
| | | | | | Add RRM to SME authentication/association if the global RRM flag is set. Signed-off-by: Beni Lev <beni.lev@intel.com>
* nl80211: Add support for global RRM flagBeni Lev2016-04-172-5/+13
| | | | | | | | Set the global RRM flag if global RRM is supported by the device. Also, allow RRM in (Re)Association Request frame if the global RRM flag is set. Signed-off-by: Beni Lev <beni.lev@intel.com>
* driver: Add global RRM support flagBeni Lev2016-04-171-0/+6
| | | | | | | This flag indicates that RRM can be used in (Re)Association Request frames, without supporting quiet period. Signed-off-by: Beni Lev <beni.lev@intel.com>
* nl80211: Register to receive Radio Measurement Request framesDavid Spinadel2016-04-171-0/+4
| | | | | | | Register to receive Radio Measurement Request frames since LCI request is supported by wpa_supplicant. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* wpa_supplicant: Handle LCI requestDavid Spinadel2016-04-175-0/+194
| | | | | | | | | | | | | | Handle radio measurement request that contains LCI request. Send measurement report based on a configurable LCI report element. The LCI report element is configured over the control interface with SET lci <hexdump of the element> and cleared with SET lci "" Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Add FTM range requestDavid Spinadel2016-04-178-3/+253
| | | | | | | | | | | | | | | | | | | | Add FTM range request via RRM. The AP sends Radio measurement request with FTM range request as a request for the receiving STA to send FTM requests to the given list of APs. The neighbor report part of the request is taken from the neighbor database. The control interface command is: REQ_RANGE <dst addr> <rand_int> <min_ap> <responder> [<responder>..] dst addr: MAC address of an associated STA rand_int: Randomization Interval (0..65535) in TUs min_ap: Minimum AP Count (1..15); minimum number of requested FTM ranges between the associated STA and the listed APs responder: List of BSSIDs for neighboring APs for which a measurement is requested Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Add LCI requestDavid Spinadel2016-04-177-1/+202
| | | | | | | Add a hostapd control interface command REQ_LCI to request LCI from an associated station using radio measurement. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Save RM enabled capability of stationDavid Spinadel2016-04-174-1/+20
| | | | | | | Save RM enabled capability element of an associating station if radio measurement is supported in its capability field. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Handle Neighbor Report Request frameDavid Spinadel2016-04-178-0/+271
| | | | | | | Process Neighbor Report Request frame and send Neighbor Report Response frame based on the configured neighbor report data. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Add own neighbor report data to neighbor databaseDavid Spinadel2016-04-161-0/+123
| | | | | | | Add own neighbor report data to neighbor database based on local LCI and location civic data. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Add a database of neighboring APsDavid Spinadel2016-04-1610-0/+341
| | | | | | | | | | | | | | | | | Add a configurable neighbor database that includes the content of Nighbor Report element, LCI and Location Civic subelements and SSID. All parameters for a neighbor must be updated at once; Neighbor Report element and SSID are mandatory, LCI and civic are optional. The age of LCI is set to the time of neighbor update. The control interface API is: SET_NEIGHBOR <BSSID> <ssid=SSID> <nr=data> [lci=<data>] [civic=<data>] To delete a neighbor use: REMOVE_NEIGHBOR <BSSID> <SSID> Signed-off-by: David Spinadel <david.spinadel@intel.com>
* tests: Replace radio_measurements with rrm_neighbor_reportDavid Spinadel2016-04-161-1/+1
| | | | | | | This moves neighbor report testing to use the new hostapd.conf parameter. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* hostapd: Extend the configuration of RRM capabilitiesDavid Spinadel2016-04-166-13/+38
| | | | | | | | | | | | | Extend the radio_measurements parameter to save all the supported RRM capabilities as it's used in RM enabled capabilities element. Make this parameter not directly configurable via config file (though, keep the radio_measurements parameter for some time for backwards compatibility). Instead, add a configuration option to enable neighbor report via radio measurements. Other features can be added later as well. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* tests: Update NEIGHBOR_REP_REQUEST formatDavid Spinadel2016-04-161-2/+2
| | | | | | | | | | | Use quotation marks to match the new SSID encoding format in the NEIGHBOR_REP_REQUEST command. In this specific test case, the exact SSID value did not make any difference for behavior. The previous version ended up getting decoded as a hexstring after the NEIGHBOR_REP_REQUEST format change. The new version goes back to the ASCII string version of "abcdef". Signed-off-by: David Spinadel <david.spinadel@intel.com>
* Fix spelling of "neighbor" in a function nameJouni Malinen2016-04-161-3/+3
| | | | | | The missing letter 'h' made it more difficult to find this function. Signed-off-by: Jouni Malinen <j@w1.fi>
* wpa_supplicant: Add LCI and civic request to Neighbor Report RequestDavid Spinadel2016-04-164-13/+108
| | | | | | | | | | | | | | | | Add an option to request LCI and Location Civic Measurement in Neighbor Report Request frame, as described in IEEE P802.11-REVmc/D5.0, 9.6.7.6. Note: This changes the encoding format of the NEIGHBOR_REP_REQUEST ssid=<val> parameter. This used to be parsed as raw SSID data which is problematic for accepting additional parameters. The new encoding allows either a string within double-quotation marks or a hexdump of the raw SSID. Thew new format: NEIGHBOR_REP_REQUEST [ssid=<SSID>] [lci] [civic] Signed-off-by: David Spinadel <david.spinadel@intel.com>
* utils: Add ssid_parse() functionDavid Spinadel2016-04-164-7/+56
| | | | | | | | | | Add a function that parses SSID in text or hex format. In case of the text format, the SSID is enclosed in double quotes. In case of the hex format, the SSID must include only hex digits and not be enclosed in double quotes. The input string may include other arguments after the SSID. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* Add measurement and neighbor report definitionsDavid Spinadel2016-04-091-1/+69
| | | | | | | | | | | | | | | | | | | | | | Add measurement report definitions from Table 9-81 in IEEE P802.11-REVmc/D5.0 "Measurement type definition for measurement requests". Add measurement report definitions from IEEE Std 802.11-2012 Table 8-71 "Location subject definition". Add neighbor report bandwidth subelement definition from IEEE P802.11-REVmc/D5.0 MC Table 9-150 - "Optional subelement IDs neighbor report" Add neighbor report channel width definition from IEEE P802.11-REVmc/D5.0, Table 9-152 - "HT/VHT Operation Information subfields". Add definitions for neighbor report BSSID info from IEEE P802.11-REVmc/D5.0, 9.4.2.37 Neighbor Report element. Signed-off-by: David Spinadel <david.spinadel@intel.com>
* utils: Rename hostapd_parse_bin to wpabuf_parse_bin and move itDavid Spinadel2016-04-094-40/+38
| | | | | | | Make the function available as part of the wpabuf API. Use this renamed function where possible. Signed-off-by: David Spinadel <david.spinadel@intel.com>