Jouni Malinen
8c66e18511
nl80211: Handle special TDLS direct link key index use
...
An ugly hack is currently used to indicate keys for TDLS direct link:
key_idx == -1. That needs to be converted to 0 for cfg80211 to accept
the key.
2011-10-23 22:14:05 +03:00
Jouni Malinen
8bdedb579a
hwsim_test: Fix silly bug in select() result processing
2011-10-23 22:14:04 +03:00
Jouni Malinen
33d8a77a39
Remove incorrect statement about get_hw_feature_data() driver_ops
...
This function is actually needed for quite a bit more than just
user space MLME implementation. The old comment here has not been
accurate for a long time, so get rid of it.
2011-10-23 20:09:40 +03:00
Jouni Malinen
edc3a7c414
Remove unused driver_ops client MLME functions
...
These driver_ops functions set_channel, set_ssid, set_bssid,
mlme_add_sta, and mlme_remove_sta were used with the user space
MLME implementation in wpa_supplicant. That was only for testing
purposes and was removed, but these driver_ops were forgotten.
Remove them now to remove confusing driver_ops definitions.
2011-10-23 20:07:57 +03:00
Christian Lamparter
e1e8cae3c7
wpa_supplicant: Check rate sets before joining BSS
...
IEEE Std 802.11-2007 7.3.2.2 demands that in order to join a BSS all
required basic rates have to be supported by the hardware.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2011-10-23 17:21:50 +03:00
Christian Lamparter
6bf731e8ce
wpa_supplicant: Unify hardware feature data
...
The hardware feature data is required in several different places
throughout the code. Previously, the data was acquired and freed on
demand, but with this patch wpa_supplicant will keep a single copy
around at runtime for everyone to use.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2011-10-23 17:21:50 +03:00
Jouni Malinen
e3b473eb4e
Allow driver wrappers to indicate whether HT info is known
...
This is needed to be able to figure out whether the driver is known
not to support HT.
2011-10-23 17:21:39 +03:00
Jouni Malinen
7756114f6a
Postpone global_init() call until first driver instance is initialized
...
This avoids allocating global driver state for driver wrappers that
are built in but not used. This can save some resources and avoids
failures with driver_nl80211.c that is now initializing netlink
connections for nl80211 in global_init().
2011-10-23 13:20:52 +03:00
Jouni Malinen
3803bd331d
TLS: Validate RSA ClientKeyExchange length field
...
Instead of using implicit length based on the received buffer, validate
RSA ClientKeyExchange based on the explicit length field.
2011-10-23 13:04:32 +03:00
Jouni Malinen
46eeedac61
Remove unused variables
2011-10-23 12:42:55 +03:00
Grant Erickson
80267c9cec
dbus: Removed unused local variable
...
Signed-off-by: Grant Erickson <marathon96@gmail.com>
2011-10-23 12:36:04 +03:00
Jouni Malinen
2683690d91
Fix hostapd_wpa_auth_send_ether() return value
...
This was not currently used for anything, but better return the correct
value instead of hardcoded -1.
2011-10-23 12:33:17 +03:00
Jouni Malinen
b832d34c48
Comment out scard initialization code if PCSC_FUNCS is not set
2011-10-23 12:24:36 +03:00
Jouni Malinen
fe4c43ce95
Remove unused variable from os_gmtime()
2011-10-23 12:22:40 +03:00
Jouni Malinen
bd2df8921b
nl80211: Remove some unnecessary ifdef HOSTAPD blocks
2011-10-22 22:51:49 +03:00
Jouni Malinen
17fbb751e1
Remove user space client MLME
...
This code was used only with driver_test.c to allow MLME operations
in hostapd to be tested without having to use a real radio. There
are no plans on extending this to any other use than testing and
mac80211_hwsim has now obsoled the need for this type of testing.
As such, we can drop this code from wpa_supplicant to clean up the
implementation of unnecessary complexity.
2011-10-22 22:45:38 +03:00
Andrii Bordunov
745e8aba69
Add CONFIG_WPS_REG_DISABLE_OPEN to defconfig
2011-10-22 22:24:34 +03:00
Andrii Bordunov
2c4f80d519
WPS: Use ifdef blocks consistently for CONFIG_WPS_REG_DISABLE_OPEN
...
The registrar variable is used only if this macro is defined, so no
need to set it otherwise.
2011-10-22 22:21:53 +03:00
Andrii Bordunov
d5695081c2
wpa_priv: Link in trace.o to fix CONFIG_WPA_TRACE build
2011-10-22 22:18:54 +03:00
Jouni Malinen
8d2639127f
wpa_priv: Link in ieee802_11_common.o if driver_nl80211 is used
2011-10-22 22:17:41 +03:00
Andrii Bordunov
f7fcfc347c
wpa_priv: Update function arguments to fix compilation
2011-10-22 22:11:40 +03:00
Jouni Malinen
9e0e6902a2
Share a single wpa_scan_results_free() implementation
...
There is not really a very good location for this anywhere, but the
function is small enough to live as an inline function for now.
2011-10-22 22:09:40 +03:00
Andrii Bordunov
d01b205378
Remove unused variable and function
2011-10-22 21:59:17 +03:00
Ben Greear
f935bd4dc5
Fix typo in comment related to EAPOL
...
Signed-off-by: Ben Greear <greearb@candelatech.com>
2011-10-22 21:41:09 +03:00
Ben Greear
c81eff1a61
nl80211: Use one global ioctl socket
...
Saves sockets when using multiple VIFS in a single
wpa_supplicant process.
Signed-off-by: Ben Greear <greearb@candelatech.com>
2011-10-22 21:39:42 +03:00
Ben Greear
276e2d671c
nl80211: Use a global netlink command object
...
Netlink sockets can be shared among all driver instances, saving
sockets and memory when using multiple interfaces in a single process.
2011-10-22 20:06:32 +03:00
Ben Greear
2a7b66f574
nl80211: Use global nl_cb template
...
All interfaces can share a single nl_cb template.
2011-10-22 20:06:30 +03:00
Ben Greear
dac12351d8
nl80211: Clean up error path in wpa_driver_nl80211_init
...
No need to duplicate the deinit code since wpa_driver_nl80211_deinit()
can be used here to clean up after a failure.
2011-10-22 18:28:06 +03:00
Johannes Berg
a92dfde818
nl80211: Abstract handle/cache (de)allocation
...
This is a cleanup now and makes it easier to add more sockets in the
future.
2011-10-22 16:56:43 +03:00
Johannes Berg
7635bfb071
nl80211: Fix hostapd error path
...
i802_init() tries to clean up everything manually, call
wpa_driver_nl80211_deinit() instead and also handle the
EAPOL socket properly.
2011-10-22 13:04:47 +03:00
Ben Greear
36d84860bb
nl80211: Use global netlink rtm event object
...
Netlink sockets can be shared among all driver instances, saving lots
of sockets, spurious log messages, memory, and CPU usage when using
multiple interfaces in a single process.
2011-10-22 12:39:05 +03:00
Jouni Malinen
4b24282a17
hostapd: Call global_init/global_deinit driver_ops
...
Now both wpa_supplicant and hostapd allow the driver wrappers to use the
global context similarly.
2011-10-22 12:22:59 +03:00
Jouni Malinen
9fb0407055
nl80211: Use a wrapper for genlmsg_put
...
This reduces the code size by a kilobyte or so and makes it easier
to replace the netlink instances to be shared among interfaces.
2011-10-22 11:29:03 +03:00
Dmitry Shmidt
bd43938102
wext: Do not set SSID on disconnect on Android
...
Some drivers seem to try to associate using the random SSID, so
do not use this hack on Android.
2011-10-21 19:11:07 +03:00
Jouni Malinen
724950836f
wext: Clean up the disconnect BSSID/SSID clearing
2011-10-21 19:09:25 +03:00
Dmitry Shmidt
48f8e03622
Prevent ap_scan change during association
...
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-21 19:00:18 +03:00
Dmitry Shmidt
8f5b9aa19a
Set ANDROID_LOG_NAME depending on application
...
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-21 18:59:42 +03:00
Dmitry Shmidt
9aa10e2b27
Add blacklist command
...
This command allows an external program manage the BSS blacklist
and display its current contents.
Note: The blacklist is considered to be internal mechanism within
wpa_supplicant and changing it can have unexpected results.
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-21 18:59:16 +03:00
Jouni Malinen
bdc4c18e0a
wext: Remove trailing whitespace
2011-10-21 18:58:01 +03:00
Jouni Malinen
11540c0b21
Interworking: Allow ANT to be configured for Probe Request frames
...
Access Network Type can now be configured (default: 15 = wildcard) to
limit which APs reply to the scan.
2011-10-21 12:44:29 +03:00
Jouni Malinen
122ba57936
Interworking: Filter Probe Request frames based on HESSID and ANT
...
Do not reply to Interworking-enabled Probe Request frames if they
request mismatching HESSID or ANT.
2011-10-21 12:43:53 +03:00
Jouni Malinen
538958ae9c
Interworking: Add Interworking element to IE parser
2011-10-21 12:43:24 +03:00
Jouni Malinen
16991cffd6
Interworking: Include Access Network Type in set_ap() driver_ops
...
This may be needed for drivers that process Probe Request frames
internally.
2011-10-21 12:12:36 +03:00
Johannes Berg
e8b5e24e04
nl80211: Clean up capability querying
...
There's no need to store everything once and then copy it. Just fill the
capa struct directly in the function that parses the info from nl80211.
2011-10-20 21:57:32 +03:00
Johannes Berg
9b90955ec7
AP: Pass only bssid/addr/wds to EVENT_RX_FROM_UNKNOWN
2011-10-20 21:51:32 +03:00
Johannes Berg
9236ba4cb5
Move get_hdr_bssid() to make it easier to share for other uses
2011-10-20 21:50:23 +03:00
Jouni Malinen
6e8183d714
nl80211: Stop more quickly on initialization errors
...
Stop on fatal errors like an attempt to use a non-existing interface or
not have root privileges to avoid producing confusing error messages.
2011-10-20 21:36:36 +03:00
Jouni Malinen
8c0d3b4fc6
Fix segfault on error path if driver initialization fails
...
wpa_s->wpa is NULL in this case and we better not call WPA state
machine functions.
2011-10-20 21:10:22 +03:00
Johannes Berg
40442f5b48
nl80211: Compat code for genl_ctrl_alloc_cache
...
It's really a waste of bits to duplicate the code for
genl_ctrl_alloc_cache() again and again -- just add a
wrapper like in iw.
2011-10-20 21:08:26 +03:00
Johannes Berg
bcf24348ed
AP: Do station poll in driver wrapper
...
This offloads the station polling to driver wrappers, which may offload
it again to the driver. The hostap driver wrapper uses "real" data
frames while nl80211 uses null data frames.
Also add a specific event to indicate that a poll was successful for
future use with the nl80211 driver.
2011-10-20 21:03:08 +03:00