path: root/wpa_supplicant
Commit message (Collapse)AuthorAgeFilesLines
* Support HT capability overridesBen Greear2012-01-297-0/+284
| | | | | | | | | | | | | | | | | | | | | | This allows HT capabilities overrides on kernels that support these features. MCS Rates can be disabled to force to slower speeds when using HT. Rates cannot be forced higher. HT can be disabled, forcing an 802.11a/b/g/n station to act like an 802.11a/b/g station. HT40 can be disabled. MAX A-MSDU can be disabled. A-MPDU Factor and A-MPDU Density can be modified. Please note that these are suggestions to the kernel. Only mac80211 drivers will work at all. The A-MPDU Factor can only be decreased and the A-MPDU Density can only be increased currently. Signed-hostap: Ben Greear <greearb@candelatech.com>
* Remove duplicated TERMINATING eventJouni Malinen2012-01-291-5/+0
| | | | | | | | Now that CTRL-EVENT-TERMINATING even is sent at the end of interface removal in case wpa_supplicant process is going to terminate, there is no need for this duplicated event in the signal handler. Signed-hostap: Jouni Malinen <j@w1.fi>
* Move ctrl_iface deinit into the end of interface deinitDmitry Shmidt2012-01-291-6/+13
| | | | | | | | | This allows TERMINATING ctrl_iface event to be sent at the end of the deinit sequence to avoid race conditions with new operations that this event may trigger while wpa_supplicant would still be running through the deinitialization path. Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* Deinit driver before notifying interface has been removedDmitry Shmidt2012-01-291-3/+3
| | | | | | | | This avoids issues with some external program starting to use the interface based on the interface removal event before wpa_supplicant has completed deinitialization of the driver interface. Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* Let wpa_supplicant_deinit_iface() know that process is terminatingDmitry Shmidt2012-01-296-12/+14
| | | | | | | This will be needed to be able to move ctrl_iface TERMINATING event to the end of interface removal. Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
* SME: Fix processing of Authentication timeout and failureEyal Shapira2012-01-291-2/+2
| | | | | | | | | | current_bss and pending_bssid weren't cleaned up so BSS kept appearing in the scan results even when it was actually gone. Use wpa_supplicant_mark_disassoc() to cleanup the wpa_s context instead of just dropping wpa_state back to DISCONNECTED. Reported-by: Vishal Mahaveer <vishalm@ti.com> Signed-hostap: Eyal Shapira <eyal@wizery.com>
* Interleave wildcard and specific SSID scans when max_ssids=1Eyal Shapira2012-01-293-8/+31
| | | | | | | | For drivers limited to scan a single SSID at a time, this prevents waiting too long for a wildcard scan in case there are several scan_ssid networks in the configuration. Signed-hostap: Eyal Shapira <eyal@wizery.com>
* Install only the binaries into BINDIRJouni Malinen2012-01-291-3/+4
| | | | | | There is no point in installing *.service files into BINDIR. Signed-hostap: Jouni Malinen <j@w1.fi>
* build: Fix install target parent directory prerequisitesGrant Erickson2012-01-291-3/+4
| | | | | | | | This changes the install target such that parent directories of installed paths area created and each path is only installed on a dependency basis. Signed-off-by: Grant Erickson <marathon96@gmail.com>
* dbus: Remove unused D-Bus version definesJouni Malinen2012-01-293-34/+0
| | | | | | | These have not been used since commit 8ddef94bd41747ba658ed4ed5dfa9e62b4b84cfa. Signed-hostap: Jouni Malinen <j@w1.fi>
* IBSS RSN: Provide ibss_rsn_get_peer() helper functionAntonio Quartulli2012-01-291-12/+20
| | | | | | | This is a useful function that simplifies some code and can eventually be used somewhere else in future. Signed-hostap: Antonio Quartulli <ordex@autistici.org>
* dbus: Fix endianness bug in Frequency and Signal propertiesSylvestre Gallon2012-01-281-2/+6
| | | | | | | | These properties did not work on big endian PowerPC (always 100% for Signal and 0 for Frequency) due to endianness problem (u32 to u16 data loss). Signed-off-by: Sylvestre Gallon <ccna.syl@gmail.com>
* Rename systemd template files to avoid @ in the file nameJouni Malinen2012-01-284-0/+3
| | | | | | | | | Perforce does not like @ in the file name and since these template files do not really need to have that in the name, make the files in repository friendlier to Perforce. The generated *.service file will maintain their old names. Signed-hostap: Jouni Malinen <j@w1.fi>
* Support fixing the BSSID in IBSS modeNicolas Cavallari2012-01-281-0/+7
| | | | | | | | | When the "bssid=" option is set for an IBSS network and ap_scan = 2, ask the driver to fix this BSSID, if possible. Previously, any "bssid=" option were ignored in IBSS mode when ap_scan=2. Signed-hostap: Nicolas Cavallari <cavallar@lri.fr>
* dbus: Create DBus getter/setter for FastReauthPaul Stewart2012-01-283-0/+60
| | | | | | | | Provide a means over DBus to set the conf->fast_reauth property, which controls whether TLS session resumption should be attempted for EAP-TLS 802.1X networks. Signed-off-by: Paul Stewart <pstew@chromium.org>
* P2P: Fix WSC IE inclusion for P2P disabled caseJouni Malinen2012-01-271-4/+6
| | | | | | | | | | | wpas_wps_in_use() was forcing WPS to be enabled unconditionally if P2P support was included in the build. This is not really the correct behavior for the case when P2P has been disabled at runtime. Change the code here to verify runtime configuration of P2P before forcing WPS to be enabled. This allows WSC IE to be left out from Probe Request frames when scanning for APs without P2P or WPS being in use. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* P2P: Do not expire peer entry if we are connected to the peerJouni Malinen2012-01-252-0/+24
| | | | | | | | Even though we may not update P2P peer entry while connected to the peer as a P2P client, we should not be expiring a P2P peer entry while that peer is the GO in a group where we are connected as a P2P client. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* Stop sched_scan in number of cases where it should not be runningJouni Malinen2012-01-232-0/+5
| | | | | | | | | | | | When a P2P group is removed, we better not leave possibly started sched_scan running. This could happen when a separate group interface was not used. In addition, it looks safer to explicitly stop sched_scan before starting P2P Listen or Find operations to make sure the offloaded scanning is not running when doing similar P2P operations. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* Update WPA/RSN IE properly for driver based BSS selectionSujith Manoharan2012-01-231-6/+56
| | | | | | | | | | | | | | | | | | | | This patch fixes an issue with roaming for drivers that set WPA_DRIVER_FLAGS_BSS_SELECTION (currently ath6kl). On moving to an AP with a different BSSID, an EVENT_ASSOC is received and the subsequent 4-way handshake may fail because of a mismatch between the RSN IE in message 3/4 and in Beacon/Probe Response. This happens only when the APs use different RSN IE contents and ap_scan is set to 1, since wpa_supplicant fails to update its cached IEs. Initial association may fail, too, in case of multiple APs with the same SSID, since BSSID selection is done by the driver and again a mismatch could be seen. Fix these two issues by clearing and updating the cached IEs on receiving an Association event from the driver. Also, retrieve the scan results when the new BSS information is not present locally. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
* eapol_test: Show MNC length in debug outputJouni Malinen2012-01-221-0/+3
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* dbus: Validate SSID length in new D-Bus scan requestSam Leffler2012-01-221-0/+10
| | | | | Validate the length of each SSID passed in a new D-Bus protocol Scan request.
* P2P: Allow Device ID to be specified for p2p_find commandJouni Malinen2012-01-085-10/+26
| | | | | | | dev_id=<P2P Device Addr> can now be specified as an argument to p2p_find to request P2P find for a specific P2P device. Signed-hostap: Jouni Malinen <j@w1.fi>
* Update copyright notices to include year 2012Jouni Malinen2012-01-013-3/+3
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* Do not trigger fast reconnection on locally generated deauth/disassocJouni Malinen2012-01-011-7/+19
| | | | | | | | | | | | | | | The deauthentication and disassociation events from nl80211 were being processed identically regardless of whether the frame was generated by the local STA or the AP. This resulted in fast reconnection mechanism getting triggered even in the case where the disconnection was detected locally (e.g., due to beacon loss) while this was supposed to happen only in the case where the AP is sending an explicit Deauthentication or Disassociation frame with a specific reason code. Fix this by adding a new deauth/disassoc event variable to indicate whether the event was generated locally. Signed-hostap: Jouni Malinen <j@w1.fi>
* Fix BSS property names in the example D-Bus scriptJouni Malinen2012-01-011-2/+2
| | | | Signed-hostap: Jouni Malinen <j@w1.fi>
* dbus: Fix extra semicolonSyam Sidhardhan2012-01-011-1/+1
| | | | Signed-off-by: Syam Sidhardhan <syamsidhardh@gmail.com>
* dbus: Increase buffer size to fix Introspect XMLJouni Malinen2011-12-311-1/+7
| | | | | | | | | | | Commit e9c3c1afedd2d0c6a0939f40c40701af8c450e1f added a new D-Bus method and that was enough to push the Introspect XML buffer over the previously allocated 8000 bytes. Increase the buffer size to make enough room for P2P interface. In addition, add a debug message to indicate if an XML segment does not fit into the buffer to make this types of failures somewhat easier to catch. Signed-hostap: Jouni Malinen <j@w1.fi>
* Remove possible authentication timeout on connection failureJouni Malinen2011-12-311-0/+5
| | | | | | | | | The authentication timeout could be triggered after the connection has already been known to have failed. The event at that point can be confusing, so better cancel the timeout when processing connection failure. Signed-hostap: Jouni Malinen <j@w1.fi>
* WPS: Use single channel scan if AP channel already knownJouni Malinen2011-12-313-4/+25
| | | | | | | | | If the BSSID of the AP is specified in the WPS command, the target AP is likely already in the BSS table and its operating channel is known. Use this information to speed up connection by only scanning the known channel. Signed-hostap: Jouni Malinen <j@w1.fi>
* Use correct (multi-user) target when installing systemd unitsMichał Górny2011-12-294-4/+4
| | | | | | | | | | | The 'network.target' is special (per systemd.special(7)), and is to be brought up indirectly when network is actually configured (i.e. through DHCP or static address settings). Irrelevant of that, all services should be always installed in multi-user.target. [Bug 427]
* P2P: Stop remain-on-channel prior to starting join-a-group clientJouni Malinen2011-12-291-0/+7
| | | | | | | | | This fixes issues with drivers that do not handle concurrent remain-on-channel and scan operations in a case where Provision Discovery Response frame is not received to stop the Action frame handshake. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* P2P: Reject p2p_group_add if forced frequency is not acceptableNeeraj Kumar Garg2011-12-271-5/+16
| | | | | | | | | | If the freq parameter is specified and we are already running legacy STA on a different frequency with a driver that does not support multi-channel concurrency, reject p2p_group_add. Same code already exists in the path of P2P connection with go negotiation but is missing for autonomous GO. Signed-hostap: Neeraj Garg <neerajkg@broadcom.com>
* P2P: Use global->p2p_dev_addr instead of parent->own_addrJouni Malinen2011-12-251-5/+5
| | | | | | | Start using global->p2p_dev_addr more consistently as the P2P Device Address. Signed-hostap: Jouni Malinen <j@w1.fi>
* Add BSSID into blacklist and do not clean blacklist during countermeasuresBartosz Markowski2011-12-251-1/+5
| | | | | If scanning continues during TKIP countermeasures, try to avoid selecting the BSS that triggered the counter measures.
* P2P: Maintain a list of P2P Clients for persistent group on GOJouni Malinen2011-12-228-9/+198
| | | | | | | | | | Add a new persistent group network block field, p2p_client_list, to maintain a list of P2P Clients that have connected to a persistent group. This allows GO of a persistent group to figure out more easily whether re-invocation of a persistent group can be used with a specific peer device. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Show persistent group info on P2P_PEER dataJouni Malinen2011-12-223-1/+27
| | | | | | | | | | | | | Add "persistent=<network id>" line to P2P_PEER ctrl_iface data if a persistent group credentials are available for this peer. This makes it easier for external programs to figure out when a persistent group could be re-invoked with this peer. For now, this information is only available on the P2P client, but similar information can be added for GO once a list of P2P clients is maintained with the persistent group data. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Move public P2P_PEER info generation into ctrl_ifaceJouni Malinen2011-12-221-3/+44
| | | | | | | | | | | | | | | | | The P2P module provides access to public peer data in struct p2p_peer_info. Use this to build the P2P_PEER information in ctrl_iface.c instead of providing such text format data from the P2P module. The internal data that was previously built in p2p_get_peer_info() as part of the text format peer data is now available through a separate p2p_get_peer_info_txt() function. This is still included in P2P_PEER output to maintain backwards compatibility with external programs that could have started to use this. However, it should be noted that this data is not really supposed to be used for anything else apart from debugging purposes and its format is subject to change. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Replace p2p_get_peer_info with p2p_peer_known when applicableJouni Malinen2011-12-222-8/+7
| | | | | | | | | p2p_get_peer_info() was used in multiple places just to check whether a specific peer is known. This was not the designed use for the function, so introduce a simpler function for that purpose to make it obvious that the p2p_get_peer_info() function is actually used only in ctrl_iface.c. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Send D-Bus ServiceDiscoveryRequest signal for external SD processing윤민홍2011-12-211-1/+4
| | | | | | wpas_notify_p2p_sd_request() needs to be called when p2p_sd_over_ctrl_iface is set to provide SD events over D-Bus similarly to the ctrl_iface events.
* Process EVENT_SCHED_SCAN_STOPPED partially if interface is disabledJouni Malinen2011-12-211-1/+5
| | | | | | | | The internal sched_scanning state needs to be cleared on this event even if the events happen to get ordered in a way that the interface gets disabled just prior to EVENT_SCHED_SCAN_STOPPED event. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* Ignore disassociation event in wpa_supplicant AP modeJouni Malinen2011-12-211-0/+10
| | | | | | | | | | | If the driver was associated in station mode just before the AP mode was started, the station mode disassociation event may end up getting delivered to wpa_supplicant only after the AP mode has been started. This can result in unexpected attempt to reassociate back to the network that was previously used in station mode. Avoid this by ignoring the disassociation event. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* P2P: Fix GO start on interface that has active station connectionJouni Malinen2011-12-211-2/+6
| | | | | | | | | The active station connection triggered wpa_supplicant AP mode startup to try to update Beacon IEs before the AP mode was properly initialized and that resulted in NULL pointer dereference in driver_nl80211.c. Fix this by skipping the IE update before the AP mode is initialized. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
* Add AP-STA-CONNECTED and DISCONNECTED events to wpa_cli -aNeeraj Kumar Garg2011-12-191-0/+4
| | | | Signed-hostap: Neeraj Kumar Garg <neerajkg@broadcom.com>
* P2P: Use hardcoded idle timeout of 10 seconds in P2P client roleJouni Malinen2011-12-182-7/+33
| | | | | | | | | | | | | The p2p_group_idle configuration parameter is much more useful for GO role, so use a separate hardcoded value of 10 seconds in P2P client role. In practice, this means that the P2P client role will automatically tear down the group when the GO tears down the group. The 10 second timeout is enough to recover from temporary disconnections without unnecessary tearing down the group if the GO is still present and allows the client to connect. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Fix disconnect event not to increase idle timeoutJouni Malinen2011-12-181-1/+3
| | | | | | | | | | | When P2P client is processing a disconnection event, make sure the P2P idle timeout does not get increased, i.e., set a new timeout only if no timeout is in use. wpa_state changes between DISCONNECTED and SCANNING can generate multiple calls to wpas_p2p_notif_disconnect() and previously this was enough to force the idle timeout never hit in practice when in P2P client role. Signed-hostap: Jouni Malinen <j@w1.fi>
* Lower RX_MGMT driver event debug level for Beacon framesJouni Malinen2011-12-181-1/+18
| | | | | | | | This event can be very frequent in AP mode when Beacon frames from neighboring BSSes are delivered to user space. Drop the debug message priority from DEBUG to EXCESSIVE for Beacon frames. Signed-hostap: Jouni Malinen <j@w1.fi>
* P2P: Fix Provision Discovery channel for some join-GO casesJouni Malinen2011-12-181-3/+3
| | | | | | | | | The Provision Discovery Request needs to be sent on the operating channel of the GO and as such, the frequency from the BSS table (scan results) need to override the frequency in the P2P peer table that could be based on the Listen channel of the GO. Signed-hostap: Jouni Malinen <j@w1.fi>
* wpa_supplicant/dbus AP: Add support for WPS Internal RegistrarGustavo Sverzut Barbieri2011-12-181-5/+67
| | | | | | | | | | | When in AP mode, wpa_supplicant is now enabling WPS (only Internal Registrar). WPS.Start() call can be used to initiate WPS negotiation similarly to how this is done in station mode. This was done to ctrl_iface by Jouni Malinen on April 21, 2009 (commit 3ec97afe571f159ea95213262c1c6b89965827d4) Signed-hostap: Gustavo Sverzut Barbieri <barbieri@profusion.mobi>
* P2P: Make GO negotiation peer and group information available over D-BusReinette Chatre2011-12-185-17/+103
| | | | | | | | | | | | | | | | | | The GO negotiation response is very cryptic at the moment. For a success message we only know on which interface the negotiation succeeded, not which peer. For a failure we know the interface also and a status code (number). It will be very useful for clients to know upon receipt of such a message which peer the negotiation occurred with. Now that the peer information is available and the API is changed already, the function composing the D-Bus message might as well include all GO negotiation information. This is done with a dict to make things easier on clients if this result information changes down the line. Signed-hostap: Reinette Chatre <reinette.chatre@intel.com> Signed-hostap: Johannes Berg <johannes.berg@intel.com>
* Fix CONFIG_NO_SCAN_PROCESSING=y build with ctrl_ifaceJouni Malinen2011-12-171-0/+4
| | | | | | | Need to remove ROAM command processing since the needed functionality for it gets removed with CONFIG_NO_SCAN_PROCESSING=y. Signed-hostap: Jouni Malinen <j@w1.fi>