diff options
author | Marcin Juszkiewicz <hrw@openedhand.com> | 2007-04-25 10:56:54 +0000 |
---|---|---|
committer | Marcin Juszkiewicz <hrw@openedhand.com> | 2007-04-25 10:56:54 +0000 |
commit | 39ca55c42b0896751d21ca65a90eb54e364df90e (patch) | |
tree | d8fdd5f8a49f0fe45a6c7cae8dfb9a166d922902 /meta/packages/wpa-supplicant/files | |
parent | e0ce469778aacfc69611b8101c0fafee53b453a9 (diff) | |
download | poky-39ca55c42b0896751d21ca65a90eb54e364df90e.tar.gz |
wpa-supplicant: drop old versions, use 0.5.7 (latest stable) as default
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1551 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/wpa-supplicant/files')
-rw-r--r-- | meta/packages/wpa-supplicant/files/wpa-supplicant.sh | 85 | ||||
-rw-r--r-- | meta/packages/wpa-supplicant/files/wpa_supplicant.conf | 320 |
2 files changed, 339 insertions, 66 deletions
diff --git a/meta/packages/wpa-supplicant/files/wpa-supplicant.sh b/meta/packages/wpa-supplicant/files/wpa-supplicant.sh new file mode 100644 index 0000000000..5c9e5d33a7 --- /dev/null +++ b/meta/packages/wpa-supplicant/files/wpa-supplicant.sh | |||
@@ -0,0 +1,85 @@ | |||
1 | #!/bin/sh | ||
2 | |||
3 | |||
4 | WPA_SUP_BIN="/usr/sbin/wpa_supplicant" | ||
5 | WPA_SUP_PNAME="wpa_supplicant" | ||
6 | WPA_SUP_PIDFILE="/var/run/wpa_supplicant.$IFACE.pid" | ||
7 | WPA_SUP_OPTIONS="-B -P $WPA_SUP_PIDFILE -i $IFACE" | ||
8 | |||
9 | VERBOSITY=0 | ||
10 | |||
11 | |||
12 | if [ -s "$IF_WPA_CONF" ]; then | ||
13 | WPA_SUP_CONF="-c $IF_WPA_CONF" | ||
14 | else | ||
15 | exit 0 | ||
16 | fi | ||
17 | |||
18 | if [ ! -x "$WPA_SUP_BIN" ]; then | ||
19 | |||
20 | if [ "$VERBOSITY" = "1" ]; then | ||
21 | echo "$WPA_SUP_PNAME: binaries not executable or missing from $WPA_SUP_BIN" | ||
22 | fi | ||
23 | |||
24 | exit 1 | ||
25 | fi | ||
26 | |||
27 | if [ "$MODE" = "start" ] ; then | ||
28 | # driver type of interface, defaults to wext when undefined | ||
29 | if [ -s "/etc/wpa_supplicant/driver.$IFACE" ]; then | ||
30 | IF_WPA_DRIVER=$(cat "/etc/wpa_supplicant/driver.$IFACE") | ||
31 | elif [ -z "$IF_WPA_DRIVER" ]; then | ||
32 | |||
33 | if [ "$VERBOSITY" = "1" ]; then | ||
34 | echo "$WPA_SUP_PNAME: wpa-driver not provided, using \"wext\"" | ||
35 | fi | ||
36 | |||
37 | IF_WPA_DRIVER="wext" | ||
38 | fi | ||
39 | |||
40 | # if we have passed the criteria, start wpa_supplicant | ||
41 | if [ -n "$WPA_SUP_CONF" ]; then | ||
42 | |||
43 | if [ "$VERBOSITY" = "1" ]; then | ||
44 | echo "$WPA_SUP_PNAME: $WPA_SUP_BIN $WPA_SUP_OPTIONS $WPA_SUP_CONF -D $IF_WPA_DRIVER" | ||
45 | fi | ||
46 | |||
47 | start-stop-daemon --start --quiet \ | ||
48 | --name $WPA_SUP_PNAME --startas $WPA_SUP_BIN --pidfile $WPA_SUP_PIDFILE \ | ||
49 | -- $WPA_SUP_OPTIONS $WPA_SUP_CONF -D $IF_WPA_DRIVER | ||
50 | fi | ||
51 | |||
52 | # if the interface socket exists, then wpa_supplicant was invoked successfully | ||
53 | if [ -S "$WPA_COMMON_CTRL_IFACE/$IFACE" ]; then | ||
54 | |||
55 | if [ "$VERBOSITY" = "1" ]; then | ||
56 | echo "$WPA_SUP_PNAME: ctrl_interface socket located at $WPA_COMMON_CTRL_IFACE/$IFACE" | ||
57 | fi | ||
58 | |||
59 | exit 0 | ||
60 | |||
61 | fi | ||
62 | |||
63 | elif [ "$MODE" = "stop" ]; then | ||
64 | |||
65 | if [ -f "$WPA_SUP_PIDFILE" ]; then | ||
66 | |||
67 | if [ "$VERBOSITY" = "1" ]; then | ||
68 | echo "$WPA_SUP_PNAME: terminating $WPA_SUP_PNAME daemon" | ||
69 | fi | ||
70 | |||
71 | start-stop-daemon --stop --quiet \ | ||
72 | --name $WPA_SUP_PNAME --pidfile $WPA_SUP_PIDFILE | ||
73 | |||
74 | if [ -S "$WPA_COMMON_CTRL_IFACE/$IFACE" ]; then | ||
75 | rm -f $WPA_COMMON_CTRL_IFACE/$IFACE | ||
76 | fi | ||
77 | |||
78 | if [ -f "$WPA_SUP_PIDFILE" ]; then | ||
79 | rm -f $WPA_SUP_PIDFILE | ||
80 | fi | ||
81 | fi | ||
82 | |||
83 | fi | ||
84 | |||
85 | exit 0 | ||
diff --git a/meta/packages/wpa-supplicant/files/wpa_supplicant.conf b/meta/packages/wpa-supplicant/files/wpa_supplicant.conf index da407b5ef3..f0c993d195 100644 --- a/meta/packages/wpa-supplicant/files/wpa_supplicant.conf +++ b/meta/packages/wpa-supplicant/files/wpa_supplicant.conf | |||
@@ -1,21 +1,46 @@ | |||
1 | ##### Example wpa_supplicant configuration file ############################### | 1 | ##### Example wpa_supplicant configuration file ############################### |
2 | # | ||
3 | # This file describes configuration file format and lists all available option. | ||
4 | # Please also take a look at simpler configuration examples in 'examples' | ||
5 | # subdirectory. | ||
6 | # | ||
2 | # Empty lines and lines starting with # are ignored | 7 | # Empty lines and lines starting with # are ignored |
3 | 8 | ||
4 | # NOTE! This file may contain password information and should probably be made | 9 | # NOTE! This file may contain password information and should probably be made |
5 | # readable only by root user on multiuser systems. | 10 | # readable only by root user on multiuser systems. |
6 | 11 | ||
12 | # Note: All file paths in this configuration file should use full (absolute, | ||
13 | # not relative to working directory) path in order to allow working directory | ||
14 | # to be changed. This can happen if wpa_supplicant is run in the background. | ||
15 | |||
16 | # Whether to allow wpa_supplicant to update (overwrite) configuration | ||
17 | # | ||
18 | # This option can be used to allow wpa_supplicant to overwrite configuration | ||
19 | # file whenever configuration is changed (e.g., new network block is added with | ||
20 | # wpa_cli or wpa_gui, or a password is changed). This is required for | ||
21 | # wpa_cli/wpa_gui to be able to store the configuration changes permanently. | ||
22 | # Please note that overwriting configuration file will remove the comments from | ||
23 | # it. | ||
24 | #update_config=1 | ||
25 | |||
7 | # global configuration (shared by all network blocks) | 26 | # global configuration (shared by all network blocks) |
8 | # | 27 | # |
9 | # Interface for separate control program. If this is specified, wpa_supplicant | 28 | # Parameters for the control interface. If this is specified, wpa_supplicant |
10 | # will create this directory and a UNIX domain socket for listening to requests | 29 | # will open a control interface that is available for external programs to |
11 | # from external programs (CLI/GUI, etc.) for status information and | 30 | # manage wpa_supplicant. The meaning of this string depends on which control |
12 | # configuration. The socket file will be named based on the interface name, so | 31 | # interface mechanism is used. For all cases, the existance of this parameter |
13 | # multiple wpa_supplicant processes can be run at the same time if more than | 32 | # in configuration is used to determine whether the control interface is |
14 | # one interface is used. | 33 | # enabled. |
34 | # | ||
35 | # For UNIX domain sockets (default on Linux and BSD): This is a directory that | ||
36 | # will be created for UNIX domain sockets for listening to requests from | ||
37 | # external programs (CLI/GUI, etc.) for status information and configuration. | ||
38 | # The socket file will be named based on the interface name, so multiple | ||
39 | # wpa_supplicant processes can be run at the same time if more than one | ||
40 | # interface is used. | ||
15 | # /var/run/wpa_supplicant is the recommended directory for sockets and by | 41 | # /var/run/wpa_supplicant is the recommended directory for sockets and by |
16 | # default, wpa_cli will use it when trying to connect with wpa_supplicant. | 42 | # default, wpa_cli will use it when trying to connect with wpa_supplicant. |
17 | ctrl_interface=/var/run/wpa_supplicant | 43 | # |
18 | |||
19 | # Access control for the control interface can be configured by setting the | 44 | # Access control for the control interface can be configured by setting the |
20 | # directory to allow only members of a group to use sockets. This way, it is | 45 | # directory to allow only members of a group to use sockets. This way, it is |
21 | # possible to run wpa_supplicant as root (since it needs to change network | 46 | # possible to run wpa_supplicant as root (since it needs to change network |
@@ -29,12 +54,28 @@ ctrl_interface=/var/run/wpa_supplicant | |||
29 | # not included in the configuration file, group will not be changed from the | 54 | # not included in the configuration file, group will not be changed from the |
30 | # value it got by default when the directory or socket was created. | 55 | # value it got by default when the directory or socket was created. |
31 | # | 56 | # |
32 | # This variable can be a group name or gid. | 57 | # When configuring both the directory and group, use following format: |
33 | #ctrl_interface_group=wheel | 58 | # DIR=/var/run/wpa_supplicant GROUP=wheel |
34 | ctrl_interface_group=0 | 59 | # DIR=/var/run/wpa_supplicant GROUP=0 |
60 | # (group can be either group name or gid) | ||
61 | # | ||
62 | # For UDP connections (default on Windows): The value will be ignored. This | ||
63 | # variable is just used to select that the control interface is to be created. | ||
64 | # The value can be set to, e.g., udp (ctrl_interface=udp) | ||
65 | # | ||
66 | # For Windows Named Pipe: This value can be used to set the security descriptor | ||
67 | # for controlling access to the control interface. Security descriptor can be | ||
68 | # set using Security Descriptor String Format (see http://msdn.microsoft.com/ | ||
69 | # library/default.asp?url=/library/en-us/secauthz/security/ | ||
70 | # security_descriptor_string_format.asp). The descriptor string needs to be | ||
71 | # prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty | ||
72 | # DACL (which will reject all connections). See README-Windows.txt for more | ||
73 | # information about SDDL string format. | ||
74 | # | ||
75 | ctrl_interface=/var/run/wpa_supplicant | ||
35 | 76 | ||
36 | # IEEE 802.1X/EAPOL version | 77 | # IEEE 802.1X/EAPOL version |
37 | # wpa_supplicant was implemented based on IEEE 802-1X-REV-d8 which defines | 78 | # wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines |
38 | # EAPOL version 2. However, there are many APs that do not handle the new | 79 | # EAPOL version 2. However, there are many APs that do not handle the new |
39 | # version number correctly (they seem to drop the frames completely). In order | 80 | # version number correctly (they seem to drop the frames completely). In order |
40 | # to make wpa_supplicant interoperate with these APs, the version number is set | 81 | # to make wpa_supplicant interoperate with these APs, the version number is set |
@@ -52,13 +93,15 @@ eapol_version=1 | |||
52 | # 0: driver takes care of scanning, AP selection, and IEEE 802.11 association | 93 | # 0: driver takes care of scanning, AP selection, and IEEE 802.11 association |
53 | # parameters (e.g., WPA IE generation); this mode can also be used with | 94 | # parameters (e.g., WPA IE generation); this mode can also be used with |
54 | # non-WPA drivers when using IEEE 802.1X mode; do not try to associate with | 95 | # non-WPA drivers when using IEEE 802.1X mode; do not try to associate with |
55 | # APs (i.e., external program needs to control association) | 96 | # APs (i.e., external program needs to control association). This mode must |
97 | # also be used when using wired Ethernet drivers. | ||
56 | # 2: like 0, but associate with APs using security policy and SSID (but not | 98 | # 2: like 0, but associate with APs using security policy and SSID (but not |
57 | # BSSID); this can be used, e.g., with ndiswrapper and NDIS driver to | 99 | # BSSID); this can be used, e.g., with ndiswrapper and NDIS drivers to |
58 | # enable operation with hidden SSIDs and optimized roaming; in this mode, | 100 | # enable operation with hidden SSIDs and optimized roaming; in this mode, |
59 | # only the first network block in the configuration file is used and this | 101 | # the network blocks in the configuration file are tried one by one until |
60 | # configuration should have explicit security policy (i.e., only one option | 102 | # the driver reports successful association; each network block should have |
61 | # in the lists) for key_mgmt, pairwise, group, proto variables | 103 | # explicit security policy (i.e., only one option in the lists) for |
104 | # key_mgmt, pairwise, group, proto variables | ||
62 | ap_scan=1 | 105 | ap_scan=1 |
63 | 106 | ||
64 | # EAP fast re-authentication | 107 | # EAP fast re-authentication |
@@ -67,6 +110,38 @@ ap_scan=1 | |||
67 | # Normally, there is no need to disable this. | 110 | # Normally, there is no need to disable this. |
68 | fast_reauth=1 | 111 | fast_reauth=1 |
69 | 112 | ||
113 | # OpenSSL Engine support | ||
114 | # These options can be used to load OpenSSL engines. | ||
115 | # The two engines that are supported currently are shown below: | ||
116 | # They are both from the opensc project (http://www.opensc.org/) | ||
117 | # By default no engines are loaded. | ||
118 | # make the opensc engine available | ||
119 | #opensc_engine_path=/usr/lib/opensc/engine_opensc.so | ||
120 | # make the pkcs11 engine available | ||
121 | #pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so | ||
122 | # configure the path to the pkcs11 module required by the pkcs11 engine | ||
123 | #pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so | ||
124 | |||
125 | # Dynamic EAP methods | ||
126 | # If EAP methods were built dynamically as shared object files, they need to be | ||
127 | # loaded here before being used in the network blocks. By default, EAP methods | ||
128 | # are included statically in the build, so these lines are not needed | ||
129 | #load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so | ||
130 | #load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so | ||
131 | |||
132 | # Driver interface parameters | ||
133 | # This field can be used to configure arbitrary driver interace parameters. The | ||
134 | # format is specific to the selected driver interface. This field is not used | ||
135 | # in most cases. | ||
136 | #driver_param="field=value" | ||
137 | |||
138 | # Maximum lifetime for PMKSA in seconds; default 43200 | ||
139 | #dot11RSNAConfigPMKLifetime=43200 | ||
140 | # Threshold for reauthentication (percentage of PMK lifetime); default 70 | ||
141 | #dot11RSNAConfigPMKReauthThreshold=70 | ||
142 | # Timeout for security association negotiation in seconds; default 60 | ||
143 | #dot11RSNAConfigSATimeout=60 | ||
144 | |||
70 | # network block | 145 | # network block |
71 | # | 146 | # |
72 | # Each network (usually AP's sharing the same SSID) is configured as a separate | 147 | # Each network (usually AP's sharing the same SSID) is configured as a separate |
@@ -75,6 +150,15 @@ fast_reauth=1 | |||
75 | # | 150 | # |
76 | # network block fields: | 151 | # network block fields: |
77 | # | 152 | # |
153 | # disabled: | ||
154 | # 0 = this network can be used (default) | ||
155 | # 1 = this network block is disabled (can be enabled through ctrl_iface, | ||
156 | # e.g., with wpa_cli or wpa_gui) | ||
157 | # | ||
158 | # id_str: Network identifier string for external scripts. This value is passed | ||
159 | # to external action script through wpa_cli as WPA_ID_STR environment | ||
160 | # variable to make it easier to do network specific configuration. | ||
161 | # | ||
78 | # ssid: SSID (mandatory); either as an ASCII string with double quotation or | 162 | # ssid: SSID (mandatory); either as an ASCII string with double quotation or |
79 | # as hex string; network name | 163 | # as hex string; network name |
80 | # | 164 | # |
@@ -95,9 +179,9 @@ fast_reauth=1 | |||
95 | # priority value, the sooner the network is matched against the scan results). | 179 | # priority value, the sooner the network is matched against the scan results). |
96 | # Within each priority group, networks will be selected based on security | 180 | # Within each priority group, networks will be selected based on security |
97 | # policy, signal strength, etc. | 181 | # policy, signal strength, etc. |
98 | # Please note that AP scanning with scan_ssid=1 is not using this priority to | 182 | # Please note that AP scanning with scan_ssid=1 and ap_scan=2 mode are not |
99 | # select the order for scanning. Instead, it uses the order the networks are in | 183 | # using this priority to select the order for scanning. Instead, they try the |
100 | # the configuration file. | 184 | # networks in the order that used in the configuration file. |
101 | # | 185 | # |
102 | # mode: IEEE 802.11 operation mode | 186 | # mode: IEEE 802.11 operation mode |
103 | # 0 = infrastructure (Managed) mode, i.e., associate with an AP (default) | 187 | # 0 = infrastructure (Managed) mode, i.e., associate with an AP (default) |
@@ -155,10 +239,27 @@ fast_reauth=1 | |||
155 | # only when the passphrase or SSID has actually changed. | 239 | # only when the passphrase or SSID has actually changed. |
156 | # | 240 | # |
157 | # eapol_flags: IEEE 802.1X/EAPOL options (bit field) | 241 | # eapol_flags: IEEE 802.1X/EAPOL options (bit field) |
158 | # Dynamic WEP key require for non-WPA mode | 242 | # Dynamic WEP key required for non-WPA mode |
159 | # bit0 (1): require dynamically generated unicast WEP key | 243 | # bit0 (1): require dynamically generated unicast WEP key |
160 | # bit1 (2): require dynamically generated broadcast WEP key | 244 | # bit1 (2): require dynamically generated broadcast WEP key |
161 | # (3 = require both keys; default) | 245 | # (3 = require both keys; default) |
246 | # Note: When using wired authentication, eapol_flags must be set to 0 for the | ||
247 | # authentication to be completed successfully. | ||
248 | # | ||
249 | # proactive_key_caching: | ||
250 | # Enable/disable opportunistic PMKSA caching for WPA2. | ||
251 | # 0 = disabled (default) | ||
252 | # 1 = enabled | ||
253 | # | ||
254 | # wep_key0..3: Static WEP key (ASCII in double quotation, e.g. "abcde" or | ||
255 | # hex without quotation, e.g., 0102030405) | ||
256 | # wep_tx_keyidx: Default WEP key index (TX) (0..3) | ||
257 | # | ||
258 | # peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e DLS) is | ||
259 | # allowed. This is only used with RSN/WPA2. | ||
260 | # 0 = disabled (default) | ||
261 | # 1 = enabled | ||
262 | #peerkey=1 | ||
162 | # | 263 | # |
163 | # Following fields are only used with internal EAP implementation. | 264 | # Following fields are only used with internal EAP implementation. |
164 | # eap: space-separated list of accepted EAP methods | 265 | # eap: space-separated list of accepted EAP methods |
@@ -182,16 +283,46 @@ fast_reauth=1 | |||
182 | # unencrypted identity with EAP types that support different tunnelled | 283 | # unencrypted identity with EAP types that support different tunnelled |
183 | # identity, e.g., EAP-TTLS) | 284 | # identity, e.g., EAP-TTLS) |
184 | # password: Password string for EAP | 285 | # password: Password string for EAP |
185 | # ca_cert: File path to CA certificate file. This file can have one or more | 286 | # ca_cert: File path to CA certificate file (PEM/DER). This file can have one |
186 | # trusted CA certificates. If ca_cert is not included, server certificate | 287 | # or more trusted CA certificates. If ca_cert and ca_path are not |
187 | # will not be verified. This is insecure and the CA file should always be | 288 | # included, server certificate will not be verified. This is insecure and |
188 | # configured. | 289 | # a trusted CA certificate should always be configured when using |
290 | # EAP-TLS/TTLS/PEAP. Full path should be used since working directory may | ||
291 | # change when wpa_supplicant is run in the background. | ||
292 | # On Windows, trusted CA certificates can be loaded from the system | ||
293 | # certificate store by setting this to cert_store://<name>, e.g., | ||
294 | # ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT". | ||
295 | # Note that when running wpa_supplicant as an application, the user | ||
296 | # certificate store (My user account) is used, whereas computer store | ||
297 | # (Computer account) is used when running wpasvc as a service. | ||
298 | # ca_path: Directory path for CA certificate files (PEM). This path may | ||
299 | # contain multiple CA certificates in OpenSSL format. Common use for this | ||
300 | # is to point to system trusted CA list which is often installed into | ||
301 | # directory like /etc/ssl/certs. If configured, these certificates are | ||
302 | # added to the list of trusted CAs. ca_cert may also be included in that | ||
303 | # case, but it is not required. | ||
189 | # client_cert: File path to client certificate file (PEM/DER) | 304 | # client_cert: File path to client certificate file (PEM/DER) |
305 | # Full path should be used since working directory may change when | ||
306 | # wpa_supplicant is run in the background. | ||
307 | # Alternatively, a named configuration blob can be used by setting this | ||
308 | # to blob://<blob name>. | ||
190 | # private_key: File path to client private key file (PEM/DER/PFX) | 309 | # private_key: File path to client private key file (PEM/DER/PFX) |
191 | # When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be | 310 | # When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be |
192 | # commented out. Both the private key and certificate will be read from | 311 | # commented out. Both the private key and certificate will be read from |
193 | # the PKCS#12 file in this case. | 312 | # the PKCS#12 file in this case. Full path should be used since working |
194 | # private_key_passwd: Password for private key file | 313 | # directory may change when wpa_supplicant is run in the background. |
314 | # Windows certificate store can be used by leaving client_cert out and | ||
315 | # configuring private_key in one of the following formats: | ||
316 | # cert://substring_to_match | ||
317 | # hash://certificate_thumbprint_in_hex | ||
318 | # for example: private_key="hash://63093aa9c47f56ae88334c7b65a4" | ||
319 | # Note that when running wpa_supplicant as an application, the user | ||
320 | # certificate store (My user account) is used, whereas computer store | ||
321 | # (Computer account) is used when running wpasvc as a service. | ||
322 | # Alternatively, a named configuration blob can be used by setting this | ||
323 | # to blob://<blob name>. | ||
324 | # private_key_passwd: Password for private key file (if left out, this will be | ||
325 | # asked through control interface) | ||
195 | # dh_file: File path to DH/DSA parameters file (in PEM format) | 326 | # dh_file: File path to DH/DSA parameters file (in PEM format) |
196 | # This is an optional configuration file for setting parameters for an | 327 | # This is an optional configuration file for setting parameters for an |
197 | # ephemeral DH key exchange. In most cases, the default RSA | 328 | # ephemeral DH key exchange. In most cases, the default RSA |
@@ -205,6 +336,14 @@ fast_reauth=1 | |||
205 | # sertificate is only accepted if it contains this string in the subject. | 336 | # sertificate is only accepted if it contains this string in the subject. |
206 | # The subject string is in following format: | 337 | # The subject string is in following format: |
207 | # /C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com | 338 | # /C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com |
339 | # altsubject_match: Semicolon separated string of entries to be matched against | ||
340 | # the alternative subject name of the authentication server certificate. | ||
341 | # If this string is set, the server sertificate is only accepted if it | ||
342 | # contains one of the entries in an alternative subject name extension. | ||
343 | # altSubjectName string is in following format: TYPE:VALUE | ||
344 | # Example: EMAIL:server@example.com | ||
345 | # Example: DNS:server.example.com;DNS:server2.example.com | ||
346 | # Following types are supported: EMAIL, DNS, URI | ||
208 | # phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters | 347 | # phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters |
209 | # (string with field-value pairs, e.g., "peapver=0" or | 348 | # (string with field-value pairs, e.g., "peapver=0" or |
210 | # "peapver=1 peaplabel=1") | 349 | # "peapver=1 peaplabel=1") |
@@ -219,6 +358,9 @@ fast_reauth=1 | |||
219 | # tunneled EAP-Success. This is required with some RADIUS servers that | 358 | # tunneled EAP-Success. This is required with some RADIUS servers that |
220 | # implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g., | 359 | # implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g., |
221 | # Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode) | 360 | # Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode) |
361 | # include_tls_length=1 can be used to force wpa_supplicant to include | ||
362 | # TLS Message Length field in all TLS messages even if they are not | ||
363 | # fragmented. | ||
222 | # sim_min_num_chal=3 can be used to configure EAP-SIM to require three | 364 | # sim_min_num_chal=3 can be used to configure EAP-SIM to require three |
223 | # challenges (by default, it accepts 2 or 3) | 365 | # challenges (by default, it accepts 2 or 3) |
224 | # phase2: Phase2 (inner authentication with TLS tunnel) parameters | 366 | # phase2: Phase2 (inner authentication with TLS tunnel) parameters |
@@ -227,25 +369,49 @@ fast_reauth=1 | |||
227 | # Following certificate/private key fields are used in inner Phase2 | 369 | # Following certificate/private key fields are used in inner Phase2 |
228 | # authentication when using EAP-TTLS or EAP-PEAP. | 370 | # authentication when using EAP-TTLS or EAP-PEAP. |
229 | # ca_cert2: File path to CA certificate file. This file can have one or more | 371 | # ca_cert2: File path to CA certificate file. This file can have one or more |
230 | # trusted CA certificates. If ca_cert2 is not included, server | 372 | # trusted CA certificates. If ca_cert2 and ca_path2 are not included, |
231 | # certificate will not be verified. This is insecure and the CA file | 373 | # server certificate will not be verified. This is insecure and a trusted |
232 | # should always be configured. | 374 | # CA certificate should always be configured. |
375 | # ca_path2: Directory path for CA certificate files (PEM) | ||
233 | # client_cert2: File path to client certificate file | 376 | # client_cert2: File path to client certificate file |
234 | # private_key2: File path to client private key file | 377 | # private_key2: File path to client private key file |
235 | # private_key2_passwd: Password for private key file | 378 | # private_key2_passwd: Password for private key file |
236 | # dh_file2: File path to DH/DSA parameters file (in PEM format) | 379 | # dh_file2: File path to DH/DSA parameters file (in PEM format) |
237 | # subject_match2: Substring to be matched against the subject of the | 380 | # subject_match2: Substring to be matched against the subject of the |
238 | # authentication server certificate. | 381 | # authentication server certificate. |
382 | # altsubject_match2: Substring to be matched against the alternative subject | ||
383 | # name of the authentication server certificate. | ||
384 | # | ||
385 | # fragment_size: Maximum EAP fragment size in bytes (default 1398). | ||
386 | # This value limits the fragment size for EAP methods that support | ||
387 | # fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set | ||
388 | # small enough to make the EAP messages fit in MTU of the network | ||
389 | # interface used for EAPOL. The default value is suitable for most | ||
390 | # cases. | ||
239 | # | 391 | # |
240 | # EAP-PSK variables: | 392 | # EAP-PSK variables: |
241 | # eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format | 393 | # eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format |
242 | # nai: user NAI | 394 | # nai: user NAI |
243 | # server_nai: authentication server NAI | 395 | # |
396 | # EAP-PAX variables: | ||
397 | # eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format | ||
398 | # | ||
399 | # EAP-SAKE variables: | ||
400 | # eappsk: 32-byte (256-bit, 64 hex digits) pre-shared key in hex format | ||
401 | # (this is concatenation of Root-Secret-A and Root-Secret-B) | ||
402 | # nai: user NAI (PEERID) | ||
403 | # | ||
404 | # EAP-GPSK variables: | ||
405 | # eappsk: Pre-shared key in hex format (at least 128 bits, i.e., 32 hex digits) | ||
406 | # nai: user NAI (ID_Client) | ||
244 | # | 407 | # |
245 | # EAP-FAST variables: | 408 | # EAP-FAST variables: |
246 | # pac_file: File path for the PAC entries. wpa_supplicant will need to be able | 409 | # pac_file: File path for the PAC entries. wpa_supplicant will need to be able |
247 | # to create this file and write updates to it when PAC is being | 410 | # to create this file and write updates to it when PAC is being |
248 | # provisioned or refreshed. | 411 | # provisioned or refreshed. Full path to the file should be used since |
412 | # working directory may change when wpa_supplicant is run in the | ||
413 | # background. Alternatively, a named configuration blob can be used by | ||
414 | # setting this to blob://<blob name> | ||
249 | # phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST | 415 | # phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST |
250 | # credentials (PAC) | 416 | # credentials (PAC) |
251 | # | 417 | # |
@@ -379,28 +545,6 @@ network={ | |||
379 | } | 545 | } |
380 | 546 | ||
381 | 547 | ||
382 | # EAP-SIM with a GSM SIM or USIM | ||
383 | network={ | ||
384 | ssid="eap-sim-test" | ||
385 | key_mgmt=WPA-EAP | ||
386 | eap=SIM | ||
387 | pin="1234" | ||
388 | pcsc="" | ||
389 | } | ||
390 | |||
391 | |||
392 | # EAP-PSK | ||
393 | network={ | ||
394 | ssid="eap-psk-test" | ||
395 | key_mgmt=WPA-EAP | ||
396 | eap=PSK | ||
397 | identity="eap_psk_user" | ||
398 | eappsk=06b4be19da289f475aa46a33cb793029 | ||
399 | nai="eap_psk_user@example.com" | ||
400 | server_nai="as@example.com" | ||
401 | } | ||
402 | |||
403 | |||
404 | # IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using | 548 | # IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using |
405 | # EAP-TLS for authentication and key generation; require both unicast and | 549 | # EAP-TLS for authentication and key generation; require both unicast and |
406 | # broadcast WEP keys. | 550 | # broadcast WEP keys. |
@@ -426,18 +570,6 @@ network={ | |||
426 | password="foobar" | 570 | password="foobar" |
427 | } | 571 | } |
428 | 572 | ||
429 | # EAP-FAST with WPA (WPA or WPA2) | ||
430 | network={ | ||
431 | ssid="eap-fast-test" | ||
432 | key_mgmt=WPA-EAP | ||
433 | eap=FAST | ||
434 | anonymous_identity="FAST-000102030405" | ||
435 | identity="username" | ||
436 | password="password" | ||
437 | phase1="fast_provisioning=1" | ||
438 | pac_file="/etc/wpa_supplicant.eap-fast-pac" | ||
439 | } | ||
440 | |||
441 | # Plaintext connection (no WPA, no IEEE 802.1X) | 573 | # Plaintext connection (no WPA, no IEEE 802.1X) |
442 | network={ | 574 | network={ |
443 | ssid="plaintext-test" | 575 | ssid="plaintext-test" |
@@ -500,3 +632,59 @@ network={ | |||
500 | private_key_passwd="password" | 632 | private_key_passwd="password" |
501 | phase1="peaplabel=0" | 633 | phase1="peaplabel=0" |
502 | } | 634 | } |
635 | |||
636 | # Example of EAP-TLS with smartcard (openssl engine) | ||
637 | network={ | ||
638 | ssid="example" | ||
639 | key_mgmt=WPA-EAP | ||
640 | eap=TLS | ||
641 | proto=RSN | ||
642 | pairwise=CCMP TKIP | ||
643 | group=CCMP TKIP | ||
644 | identity="user@example.com" | ||
645 | ca_cert="/etc/cert/ca.pem" | ||
646 | client_cert="/etc/cert/user.pem" | ||
647 | |||
648 | engine=1 | ||
649 | |||
650 | # The engine configured here must be available. Look at | ||
651 | # OpenSSL engine support in the global section. | ||
652 | # The key available through the engine must be the private key | ||
653 | # matching the client certificate configured above. | ||
654 | |||
655 | # use the opensc engine | ||
656 | #engine_id="opensc" | ||
657 | #key_id="45" | ||
658 | |||
659 | # use the pkcs11 engine | ||
660 | engine_id="pkcs11" | ||
661 | key_id="id_45" | ||
662 | |||
663 | # Optional PIN configuration; this can be left out and PIN will be | ||
664 | # asked through the control interface | ||
665 | pin="1234" | ||
666 | } | ||
667 | |||
668 | # Example configuration showing how to use an inlined blob as a CA certificate | ||
669 | # data instead of using external file | ||
670 | network={ | ||
671 | ssid="example" | ||
672 | key_mgmt=WPA-EAP | ||
673 | eap=TTLS | ||
674 | identity="user@example.com" | ||
675 | anonymous_identity="anonymous@example.com" | ||
676 | password="foobar" | ||
677 | ca_cert="blob://exampleblob" | ||
678 | priority=20 | ||
679 | } | ||
680 | |||
681 | blob-base64-exampleblob={ | ||
682 | SGVsbG8gV29ybGQhCg== | ||
683 | } | ||
684 | |||
685 | |||
686 | # Wildcard match for SSID (plaintext APs only). This example select any | ||
687 | # open AP regardless of its SSID. | ||
688 | network={ | ||
689 | key_mgmt=NONE | ||
690 | } | ||