aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* tests: Minor clean up for GAS test casesJouni Malinen2014-01-071-1/+2
| | | | | | | Do not run a full scan in gas_generic since this is not really needed. Dump pending event messages after long wait to make logs clearer. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Clean up hostapd ctrl_iface debug loggingJouni Malinen2014-01-071-3/+2
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Write debug logs into the database for failed test casesJouni Malinen2014-01-072-4/+33
| | | | | | | This makes it easier to build a web page for analyzing failures without having to fetch the log files themselves from the test server. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Radio work itemsJouni Malinen2014-01-071-0/+57
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Allow external programs to request wpa_radio work itemsJouni Malinen2014-01-077-3/+283
| | | | | | | | | | | | The new control interface command RADIO_WORK can be used by external programs to request radio allocation slots from wpa_supplicant if exclusive radio control is needed, e.g., for offchannel operations. If such operations are done directly to the driver, wpa_supplicant may not have enough information to avoid conflicting operations. This new command can be used to provide enough information and radio scheduling to avoid issues with such cases. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify behavior during externally triggered scanJouni Malinen2014-01-071-2/+24
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Do not start wpa_radio work during externally triggered scanJouni Malinen2014-01-074-12/+11
| | | | | | | | | | If an external program triggers a scan, wpa_supplicant does not have a wpa_radio work item for this operation to protect against other offchannel operations. This can result in operations failing, so try to avoid damage by not starting any new wpa_radio work items during a scan that was started by another process. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify cfg80211 connect API with concurrent operationJouni Malinen2014-01-071-0/+23
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove unneeded scan delay on connection-in-progressJouni Malinen2014-01-073-38/+1
| | | | | | | | This type of protection against concurrent connection and scan operations is now enforced through the wpa_radio work mechanism, so this separate protection mechanism is not needed anymore. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove unneeded GAS query delay on connection-in-progressJouni Malinen2014-01-071-38/+16
| | | | | | | | This type of protection against concurrent connection and offchannel GAS operations is now enforced through the wpa_radio work mechanism, so this separate protection mechanism is not needed anymore. Signed-hostap: Jouni Malinen <j@w1.fi>
* Use wpa_radio work for connectionJouni Malinen2014-01-073-16/+184
| | | | | | | | This protects against conflicting offchannel operations during connection (authentication, association, EAP exchanges, 4-way handshake). Signed-hostap: Jouni Malinen <j@w1.fi>
* Use radio work for GAS requestsJouni Malinen2014-01-073-29/+46
| | | | | | | | | Avoid concurrent GAS operations with any other exclusive use of the radio by using the radio work queuing mechanism. This replaces some of the earlier constraints on concurrent operations with the more generic wpa_radio work concept. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Use radio work to protect offchannel Action frame exchangesJouni Malinen2014-01-073-0/+136
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Use radio work for P2P Listen requestsJouni Malinen2014-01-072-12/+88
| | | | | | | | | Avoid concurrent P2P Listen operations with any other exclusive use of the radio by using the radio work queuing mechanism. This removes some of the earlier workarounds that postponed scans depending on other operations. Signed-hostap: Jouni Malinen <j@w1.fi>
* Use radio work for P2P scan requestsJouni Malinen2014-01-059-195/+102
| | | | | | | | | Avoid concurrent P2P scan requests with any other exclusive use of the radio by using the radio work queuing mechanism. This removes some of the earlier workarounds that postponed scans depending on other operations. Signed-hostap: Jouni Malinen <j@w1.fi>
* Use radio work for scan requestsJouni Malinen2014-01-054-42/+95
| | | | | | | Avoid concurrent scan requests by using the radio work queuing mechanism. Signed-hostap: Jouni Malinen <j@w1.fi>
* Add framework for exclusive radio operationsJouni Malinen2014-01-053-6/+177
| | | | | | | | | | | | | | The new radio work item concept can be used to request time for an operation that requires exclusive radio control, e.g., a scan. Once the radio is available, the registered callback function will be called. radio_work_done() must be called once the exclusive radio operation has been completed, so that the radio is freed for other operations. The special case of deinit=1 is used to free the context data during interface removal. That does not allow the callback function to start the radio operation, i.e., it needs to free the allocated resources and return. Signed-hostap: Jouni Malinen <j@w1.fi>
* Add helper functions for cloning and freeing scan parametersJouni Malinen2014-01-053-3/+91
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Ignore externally triggered scan results with scan_res_handlerJouni Malinen2014-01-051-1/+2
| | | | | | | | | wpa_s->scan_res_handler is set only for cases where a scan operation is requested for a specific purpose. As such, this callback should only be called when a scan result from a scan that was triggered by wpa_supplicant is processed. Signed-hostap: Jouni Malinen <j@w1.fi>
* Clean up ctrl_iface debug prints for monitor eventsJouni Malinen2014-01-051-21/+29
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Use cleaner debug print for ctrl_iface commands with private infoJouni Malinen2014-01-051-5/+14
| | | | | | | Convert this to a text string instead of ASCII hexdump to make the debug log more convenient to use. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove duplicated RX ctrl_iface hexdumpJouni Malinen2014-01-051-2/+0
| | | | | | | | | The newer wpa_dbg() print includes the same information in a more convenient form, so remove the duplicate RX ctrl_iface hexdump in the cases where there is no key material in the control interface commands (the possible-key-material case is still using wpa_hexdump_ascii_key). Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Fix unit test linking after reltime changesJouni Malinen2014-01-051-12/+15
| | | | | | librt needs to be linked in with older glibc versions. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Clean up and optimize gas_concurrent_scan and _connectJouni Malinen2014-01-052-7/+13
| | | | | | | No need to run a full scan as the first step since it only needs to find the AP from a known channel for the GAS operation. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Remove ignore_old_scan_res workaroundJouni Malinen2014-01-038-61/+0
| | | | | | | | | Now that wpa_supplicant requests the driver (cfg80211) to clear its scan cache automatically after each BSS_FLUSH/FLUSH command, the previously used ignore_old_scan_res workaround should not be needed for the hwsim test cases anymore. Signed-hostap: Jouni Malinen <j@w1.fi>
* Fix scan-cache-clearing operation to avoid unnecessary casesJouni Malinen2014-01-031-1/+1
| | | | | | | | wpa_drv_scan() success case was supposed to clear wpa_s->clear_driver_scan_cache, not params->only_new_results (which would do nothing here). Signed-hostap: Jouni Malinen <j@w1.fi>
* Avoid unnecessary key clearing operationsJouni Malinen2014-01-024-27/+26
| | | | | | | | Track set_key operations per-key index and clear keys on disconnection only if the key was set (or may have been set which is the case for the first operation after wpa_supplicant start). Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove some unnecessary EAPOL port (un)authorized callbacksJouni Malinen2014-01-021-9/+18
| | | | | | | | | | | If the port status did not change or would not need to get an update after portEnabled changes, there is no need to try to set the driver to use the same value it is already using based on the previous state. Remove such calls to reduce number of operations during reassociation. In addition, this cleans up the debug log by removing unnecessary duplicated entries. Signed-hostap: Jouni Malinen <j@w1.fi>
* Ask driver to report only new scan results if requestedJouni Malinen2014-01-026-0/+31
| | | | | | | | | | | | | | | | | If the BSS table within wpa_supplicant is flushed, request the driver to flush its own scan result table during the next scan. This can avoid unexpected old BSS entries showing up after BSS_FLUSH or FLUSH command in cases where the driver may maintain its internal cache of scan results (e.g., cfg80211 BSS table persists at least for 15 seconds). In addition to doing this automatically on BSS_FLUSH/FLUSH, a new SCAN command argument, only_new=1, can be used to request a manual scan request to do same. Though, it should be noted that this maintains the BSS table within wpa_supplicant. BSS_FLUSH followed by SCAN command can be used to clear all BSS entries from both the driver and wpa_supplicant. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove hostapd dump_file functionalityJouni Malinen2014-01-0211-114/+11
| | | | | | | | | | This debugging mechanism has now been deprecated by the control interface commands that can be used to fetch same internal information from hostapd in a more convenient way. Leave the empty USR1 signal handler and configuration file parameter for backwards compatibility. They can be removed in future versions of hostapd. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify STA command output and EAPOL stateJouni Malinen2014-01-022-2/+16
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Make EAPOL dump data available through ctrl_iface STA commandJouni Malinen2014-01-022-12/+31
| | | | | | | The per-STA/Supplicant state information from the EAPOL authenticator is now available through "STA <MAC Address> eapol" command. Signed-hostap: Jouni Malinen <j@w1.fi>
* Convert EAPOL authenticator dump into easier to parse formatJouni Malinen2014-01-023-108/+176
| | | | | | | Use name=value entries one per each line and rename the state entries to have unique names. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove hostapd dump_file data that is available through ctrl_ifaceJouni Malinen2014-01-021-97/+0
| | | | | | | | | There is no need to maintain two interfaces for fetching debug information about hostapd state. The control interface is more convenient for number of use cases, so prefer that over the dump_file mechanism. Signed-hostap: Jouni Malinen <j@w1.fi>
* Make RADIUS server MIB available through control interfaceJouni Malinen2014-01-022-0/+22
| | | | | | | "MIB radius_server" control interface can now be used to fetch the RADIUS server MIB data from hostapd. Signed-hostap: Jouni Malinen <j@w1.fi>
* Add more STA information into the ctrl_iface STA commandJouni Malinen2014-01-022-11/+75
| | | | | | | | | This adds TX/RX statistics and information about association into the per-STA data that is available through the hostapd control interface. In addition, information about the EAP method is now included with the IEEE 802.1X data. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove forgotten notes about already removed driver wrappersJouni Malinen2014-01-023-119/+4
| | | | | | | | These old driver wrappers have been removed quite some time ago, but some of the build configuration notes were still describing how they are configured. Signed-hostap: Jouni Malinen <j@w1.fi>
* Update EAP-FAST note regarding OpenSSL supportJouni Malinen2014-01-022-8/+6
| | | | | | This is now supported in the current OpenSSL version. Signed-hostap: Jouni Malinen <j@w1.fi>
* nl80211: Initial support for vendor commands and eventsJouni Malinen2014-01-011-0/+92
| | | | | | | | Print into the debug log the list of vendor commands and events that the driver supports. In addition, add a generic handler for vendor events. This can be extended for each vendor/subcmd. Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify GET_CONFIG ctrl_iface command on hostapdJouni Malinen2014-01-011-0/+9
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Add more thorough WPS_AP_PIN validationJouni Malinen2014-01-011-8/+37
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* WPS: Fix clear-from-timeout handling to avoid race conditionJouni Malinen2014-01-011-0/+4
| | | | | | | | | | The 100 ms timeout to clear WPS state after EAP-Failure has been received worked otherwise fine, but it opened a race condition on another WPS operation starting within that wait. If that happens, the timeout will cancel that new operation unexpectedly. Fix this by cancelling the timeout from wpas_clear_wps(). Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify WPS_CHECK_PIN functionalityJouni Malinen2014-01-011-0/+19
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: P2P SD using per-peer queryJouni Malinen2014-01-011-10/+12
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Verify P2P SD request cancelJouni Malinen2014-01-011-0/+17
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: P2P service discovery with GAS fragmentationJouni Malinen2014-01-011-1/+17
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: P2P Presence RequestJouni Malinen2014-01-011-0/+8
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Send received Presence Response information to ctrl_iface monitorsJouni Malinen2014-01-016-5/+56
| | | | | | | | | The P2P_PRESENCE_REQ command did not give any easily available indication of the response received from the GO. Make this more useful by providing such response (if received) as a ctrl_iface monitor event (P2P-PRESENCE-RESPONSE). Signed-hostap: Jouni Malinen <j@w1.fi>
* tests: Add some coverage for Device Discoverability exchangeJouni Malinen2014-01-011-0/+30
| | | | | | | | | | | | | This is not really perfect, but something to get a bit more testing coverage.. For proper discoverability mechanism validation, the P2P client would need to go to sleep to avoid acknowledging the GO Negotiation Request frame. Offchannel Listen mode operation on the P2P Client with mac80211_hwsim is apparently not enough to avoid the acknowledgement on the operating channel, so need to disconnect from the group which removes the GO-to-P2P Client part of the discoverability exchange in practice. Signed-hostap: Jouni Malinen <j@w1.fi>
* ACS: Mark acs_fail() staticJouni Malinen2013-12-311-1/+1
| | | | | | This function is not used outside acs.c. Signed-hostap: Jouni Malinen <j@w1.fi>