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
Jouni Malinen
7a25f29d89
Interworking: Use unsigned integer for bitfield
...
Signed integer with one-bit value does not make much sense, so clean
this up by using an unsigned integer instead.
2011-10-20 20:49:21 +03:00
Jouni Malinen
180cdf45a4
wext: Increase scan timeout from 5 to 10 seconds
...
Some dualband cards can use more than five seconds to run through
a full scan, so increase the timeout to avoid hitting the missing
scan completed event workaround.
2011-10-18 23:04:36 +03:00
Dmitry Shmidt
0597a5b59d
Add log_level command
...
This can be used to display the current debugging level and to change
the log level during run time.
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-10-18 22:53:46 +03:00
Jouni Malinen
54e9c5fc69
EAP: Clear ClientTimeout back to default value in INITIALIZE
...
This fixes an issue where WPS run leaves a small ClientTimeout
value (2) configured and the next EAPOL authentication is started
with that small value even for Identity exchange. This can cause
problems when an EAPOL packet gets dropped immediately after
association and a retry of that packet is needed (which may take
more than two seconds).
2011-10-18 18:44:35 +03:00
Dmitry Shmidt
ed3eecd786
Android: Add wpa_ctrl_cleanup()
...
This function can be used to clean up local UNIX domain socket files
that may be left over from clients that were previously connected to
wpa_supplicant. At least for now, this is only available for Android
builds.
2011-10-18 17:27:53 +03:00
Jouni Malinen
67e838fd0c
Android: Sync Android.mk with recent Makefile changes
2011-10-18 17:15:36 +03:00
Jouni Malinen
ea08bfe384
netlink: Do not use void pointer for pointer arithmetic
...
This is a non-standard extension in gcc, so better not depend on it.
2011-10-18 17:00:08 +03:00
Jouni Malinen
39b97072b2
Add support for Time Advertisement
...
This adds preliminary support for IEEE 802.11v Time Advertisement
mechanism with UTC TSF offset.
2011-10-18 00:24:16 +03:00
Jouni Malinen
96b2cb226a
Add os_gmtime() as wrapper for gmtime()
2011-10-18 00:23:42 +03:00
Jouni Malinen
4b2a77aba2
Interworking: Add support for configuring Roaming Consortium List
2011-10-17 23:55:50 +03:00
Jouni Malinen
c7c178e15e
Interworking: Add Advertisement Protocol element
...
For now, assume that ANQP will always be enabled with Interworking.
This may be made separately configurable in the future.
2011-10-17 23:19:52 +03:00
Jouni Malinen
3c11382b6c
Remove set_intra_bss() driver_ops
...
This has been replaced by the isolate parameter available through
set_ap() calls.
2011-10-17 23:04:27 +03:00
Jouni Malinen
ecff342716
atheros: Add a placeholder function for set_ap() driver_ops
2011-10-17 21:36:28 +03:00
Jouni Malinen
8a33a63f58
Add Interworking configuration in set_ap() driver_ops
...
Drivers that implement SME/MLME may find it easier to use separated
information to configure Interworking related parameters.
2011-10-17 21:35:41 +03:00
Jouni Malinen
a194b06c81
Add Ext Capab and Interworking elements to extra IEs
...
These need to be provided to drivers that implement SME/MLME.
2011-10-17 21:30:44 +03:00
Jouni Malinen
06c4d2472f
Move Ext Capab and Interworking element construction into shared file
...
These needs to be available for drivers that implement SME/MLME.
2011-10-17 21:03:52 +03:00
Jouni Malinen
c2ff13c533
Clean up AP mode extra IE construction
...
Make it easier to add more IEs into the buffers.
2011-10-17 20:55:06 +03:00
Jouni Malinen
6c0575c322
Remove unused function argument
2011-10-17 20:10:07 +03:00
Jouni Malinen
31357268e5
Move AP BSS configuration parameters into set_ap()
...
Remove the separate driver_ops functions set_cts_protect(),
set_preamble(), set_short_slot_time(), and set_ht_params(). These
belong into same set of operations as set_ap(), so there is no need
to maintain separate functions that just make the driver wrapper
more complex.
Since these have only been used with driver_nl80211.c, the driver_ops
can be removed immediately instead of maintaining backwards
compatibility period with the old functions.
2011-10-17 19:31:33 +03:00