]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
wpa_supplicant: Default to nl80211 instead of wext
authorJouni Malinen <jouni@qca.qualcomm.com>
Mon, 29 Apr 2013 13:55:44 +0000 (16:55 +0300)
committerJouni Malinen <j@w1.fi>
Mon, 29 Apr 2013 13:55:44 +0000 (16:55 +0300)
nl80211 has obsoleted WEXT as the preferred kernel interface for
controlling wireless drivers. Update wpa_supplicant driver interface
list order so that nl80211 gets used first if both nl80211 and wext
interfaces are included in the build. In addition, update README to
reflect the fact that WEXT is obsolete.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>

src/drivers/drivers.c
wpa_supplicant/README
wpa_supplicant/main.c

index 1d0ff6e15f1453309563f20fd23b2247d1523241..04eb4fd1c17e1e47397b7bd64f53dffae2391259 100644 (file)
@@ -50,12 +50,12 @@ extern struct wpa_driver_ops wpa_driver_none_ops; /* driver_none.c */
 
 struct wpa_driver_ops *wpa_drivers[] =
 {
-#ifdef CONFIG_DRIVER_WEXT
-       &wpa_driver_wext_ops,
-#endif /* CONFIG_DRIVER_WEXT */
 #ifdef CONFIG_DRIVER_NL80211
        &wpa_driver_nl80211_ops,
 #endif /* CONFIG_DRIVER_NL80211 */
+#ifdef CONFIG_DRIVER_WEXT
+       &wpa_driver_wext_ops,
+#endif /* CONFIG_DRIVER_WEXT */
 #ifdef CONFIG_DRIVER_HOSTAP
        &wpa_driver_hostap_ops,
 #endif /* CONFIG_DRIVER_HOSTAP */
index d84e61e4b0528b1ef1ebd104d4c4e78a8ed303f5..f43963253aa98e39a13174afd1b5a257ec3910e7 100644 (file)
@@ -115,13 +115,15 @@ Current hardware/software requirements:
 - NetBSD-current
 - Microsoft Windows with WinPcap (at least WinXP, may work with other versions)
 - drivers:
-       Linux drivers that support WPA/WPA2 configuration with the generic
-       Linux wireless extensions (WE-18 or newer). Even though there are
+       Linux drivers that support cfg80211/nl80211. Even though there are
        number of driver specific interface included in wpa_supplicant, please
-       note that Linux drivers are moving to use generic wireless extensions
-       and driver_wext (-Dwext on wpa_supplicant command line) should be the
-       default option to start with before falling back to driver specific
-       interface.
+       note that Linux drivers are moving to use generic wireless configuration
+       interface driver_nl80211 (-Dnl80211 on wpa_supplicant command line)
+       should be the default option to start with before falling back to driver
+       specific interface.
+
+       Linux drivers that support WPA/WPA2 configuration with the generic
+       Linux wireless extensions (WE-18 or newer). Obsoleted by nl80211.
 
        In theory, any driver that supports Linux wireless extensions can be
        used with IEEE 802.1X (i.e., not WPA) when using ap_scan=0 option in
@@ -436,6 +438,7 @@ options:
   -N = start describing new interface
 
 drivers:
+  nl80211 = Linux nl80211/cfg80211
   wext = Linux wireless extensions (generic)
   wired = wpa_supplicant wired Ethernet driver
   roboswitch = wpa_supplicant Broadcom switch driver
@@ -477,7 +480,7 @@ If the interface is added in a Linux bridge (e.g., br0), the bridge
 interface needs to be configured to wpa_supplicant in addition to the
 main interface:
 
-wpa_supplicant -cw.conf -Dwext -iwlan0 -bbr0
+wpa_supplicant -cw.conf -Dnl80211 -iwlan0 -bbr0
 
 
 Configuration file
@@ -869,10 +872,10 @@ network (SSID):
 # Start wpa_supplicant in the background
 wpa_supplicant -g/var/run/wpa_supplicant-global -B
 
-# Add a new interface (wlan0, no configuration file, driver=wext, and
+# Add a new interface (wlan0, no configuration file, driver=nl80211, and
 # enable control interface)
 wpa_cli -g/var/run/wpa_supplicant-global interface_add wlan0 \
-       "" wext /var/run/wpa_supplicant
+       "" nl80211 /var/run/wpa_supplicant
 
 # Configure a network using the newly added network interface:
 wpa_cli -iwlan0 add_network
@@ -933,7 +936,7 @@ Example configuration:
   chmod 0750 /var/run/wpa_priv
 - start wpa_priv as root (e.g., from system startup scripts) with the
   enabled interfaces configured on the command line:
-  wpa_priv -B -P /var/run/wpa_priv.pid wext:ath0
+  wpa_priv -B -P /var/run/wpa_priv.pid nl80211:wlan0
 - run wpa_supplicant as non-root with a user that is in wpapriv group:
   wpa_supplicant -i ath0 -c wpa_supplicant.conf
 
index 1744620453c8a4a9ca145f0f103aa33eefe7b92d..f45c1b7d13893a4f6f3da81258bdaebab2fb00be 100644 (file)
@@ -84,7 +84,7 @@ static void usage(void)
 
        printf("example:\n"
               "  wpa_supplicant -D%s -iwlan0 -c/etc/wpa_supplicant.conf\n",
-              wpa_drivers[i] ? wpa_drivers[i]->name : "wext");
+              wpa_drivers[0] ? wpa_drivers[0]->name : "nl80211");
 #endif /* CONFIG_NO_STDOUT_DEBUG */
 }