OSDN Git Service

private_lib: move WPA_EVENT_DRIVER_STATE to driver_cmd_common.h
[android-x86/external-wpa_supplicant_8.git] / wpa_supplicant / README
index 506a907..78df89e 100644 (file)
@@ -1,37 +1,22 @@
 WPA Supplicant
 ==============
 
-Copyright (c) 2003-2011, Jouni Malinen <j@w1.fi> and contributors
+Copyright (c) 2003-2013, Jouni Malinen <j@w1.fi> and contributors
 All Rights Reserved.
 
-This program is dual-licensed under both the GPL version 2 and BSD
-license. Either license may be used at your option.
+This program is licensed under the BSD license (the one with
+advertisement clause removed).
+
+If you are submitting changes to the project, please see CONTRIBUTIONS
+file for more instructions.
 
 
 
 License
 -------
 
-GPL v2:
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License version 2 as
-published by the Free Software Foundation.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-(this copy of the license is in COPYING file)
-
-
-Alternatively, this software may be distributed, used, and modified
-under the terms of BSD license:
+This software may be distributed, used, and modified under the terms of
+BSD license:
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are
@@ -130,46 +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.
-
-       Host AP driver for Prism2/2.5/3 (development snapshot/v0.2.x)
-       (http://hostap.epitest.fi/)
-       Driver need to be set in Managed mode ('iwconfig wlan0 mode managed').
-       Please note that station firmware version needs to be 1.7.0 or newer
-       to work in WPA mode.
-
-       Linuxant DriverLoader (http://www.linuxant.com/driverloader/)
-       with Windows NDIS driver for your wlan card supporting WPA.
-
-       madwifi driver for cards based on Atheros chip set (ar521x)
-       (http://sourceforge.net/projects/madwifi/)
-       Please note that you will need to modify the wpa_supplicant .config
-       file to use the correct path for the madwifi driver root directory
-       (CFLAGS += -I../madwifi/wpa line in example defconfig).
-
-       Linux ndiswrapper (http://ndiswrapper.sourceforge.net/) with
-       Windows NDIS driver.
-
-       Broadcom wl.o driver (old version only)
-       This is a generic Linux driver for Broadcom IEEE 802.11a/g cards.
-       However, it is proprietary driver that is not publicly available
-       except for couple of exceptions, mainly Broadcom-based APs/wireless
-       routers that use Linux. The driver binary can be downloaded, e.g.,
-       from Linksys support site (http://www.linksys.com/support/gpl.asp)
-       for Linksys WRT54G. The GPL tarball includes cross-compiler and
-       the needed header file, wlioctl.h, for compiling wpa_supplicant.
-       This driver support in wpa_supplicant is expected to work also with
-       other devices based on Broadcom driver (assuming the driver includes
-       client mode support). Please note that the newer Broadcom driver
-       ("hybrid Linux driver") supports Linux wireless extensions and does
-       not need (or even work) with the specific driver wrapper. Use -Dwext
-       with that driver.
+       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
@@ -347,7 +301,7 @@ and a list of available options and additional notes.
 The build time configuration can be used to select only the needed
 features and limit the binary size and requirements for external
 libraries. The main configuration parts are the selection of which
-driver interfaces (e.g., hostap, madwifi, ..) and which authentication
+driver interfaces (e.g., nl80211, wext, ..) and which authentication
 methods (e.g., EAP-TLS, EAP-PEAP, ..) are included.
 
 Following build time configuration options are used to control IEEE
@@ -382,21 +336,16 @@ CONFIG_PCSC=y
 Following options can be added to .config to select which driver
 interfaces are included.
 
-CONFIG_DRIVER_HOSTAP=y
-CONFIG_DRIVER_MADWIFI=y
+CONFIG_DRIVER_NL80211=y
 CONFIG_DRIVER_WEXT=y
-CONFIG_DRIVER_RALINK=y
-CONFIG_DRIVER_BROADCOM=y
 CONFIG_DRIVER_BSD=y
 CONFIG_DRIVER_NDIS=y
 
-Following example includes all features and driver interfaces that are
-included in the wpa_supplicant package:
+Following example includes some more features and driver interfaces that
+are included in the wpa_supplicant package:
 
-CONFIG_DRIVER_HOSTAP=y
-CONFIG_DRIVER_MADWIFI=y
+CONFIG_DRIVER_NL80211=y
 CONFIG_DRIVER_WEXT=y
-CONFIG_DRIVER_BROADCOM=y
 CONFIG_DRIVER_BSD=y
 CONFIG_DRIVER_NDIS=y
 CONFIG_IEEE8021X_EAPOL=y
@@ -461,6 +410,7 @@ Command line options
 
 usage:
   wpa_supplicant [-BddfhKLqqtuvwW] [-P<pid file>] [-g<global ctrl>] \
+        [-G<group>] \
         -i<ifname> -c<config file> [-C<ctrl>] [-D<driver>] [-p<driver_param>] \
         [-b<br_ifname> [-N -i<ifname> -c<conf> [-C<ctrl>] [-D<driver>] \
         [-p<driver_param>] [-b<br_ifname>] ...]
@@ -475,10 +425,11 @@ options:
   -D = driver name (can be multiple drivers: nl80211,wext)
   -f = Log output to default log location (normally /tmp)
   -g = global ctrl_interface
+  -G = global ctrl_interface group
   -K = include keys (passwords, etc.) in debug output
   -t = include timestamp in debug messages
   -h = show this help text
-  -L = show license (GPL and BSD)
+  -L = show license (BSD)
   -p = driver parameters
   -P = PID file
   -q = decrease debugging verbosity (-qq even less)
@@ -489,12 +440,8 @@ options:
   -N = start describing new interface
 
 drivers:
-  hostap = Host AP driver (Intersil Prism2/2.5/3) [default]
-       (this can also be used with Linuxant DriverLoader)
-  madwifi = MADWIFI 802.11 support (Atheros, etc.) (deprecated; use wext)
+  nl80211 = Linux nl80211/cfg80211
   wext = Linux wireless extensions (generic)
-  ralink = Ralink Client driver
-  broadcom = Broadcom wl.o driver
   wired = wpa_supplicant wired Ethernet driver
   roboswitch = wpa_supplicant Broadcom switch driver
   bsd = BSD 802.11 support (Atheros, etc.)
@@ -527,15 +474,15 @@ separated with -N argument. As an example, following command would
 start wpa_supplicant for two interfaces:
 
 wpa_supplicant \
-       -c wpa1.conf -i wlan0 -D hostap -N \
-       -c wpa2.conf -i ath0 -D madwifi
+       -c wpa1.conf -i wlan0 -D nl80211 -N \
+       -c wpa2.conf -i wlan1 -D wext
 
 
 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 -Dmadwifi -iath0 -bbr0
+wpa_supplicant -cw.conf -Dnl80211 -iwlan0 -bbr0
 
 
 Configuration file
@@ -927,10 +874,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
@@ -991,7 +938,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