All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version.
@ 2013-11-28 11:32 Yaniv Mahani
  2013-11-30 17:28 ` Cooper Jr., Franklin
  2013-12-04  7:05 ` Denys Dmytriyenko
  0 siblings, 2 replies; 3+ messages in thread
From: Yaniv Mahani @ 2013-11-28 11:32 UTC (permalink / raw)
  To: meta-arago

From: Yaniv Machani <yanivma@ti.com>

- Build wpa-supplicant from TI_Openlink ol_r8.a8.08
- Add missing includes for building with libnl3.
- Adjusted configuration files, and added p2p conf.

Signed-off-by: Yaniv Machani <yanivma@ti.com>
---
 .../wpa-supplicant/wpa-supplicant-wl18xx/defconfig |  164 ++++--
 ....a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} |    6 +-
 .../wpa-supplicant/wpa-supplicant.inc              |    3 +
 .../wpa-supplicant/p2p_supplicant.conf             |   14 +
 .../wpa-supplicant/wpa_supplicant.conf             |  674 +-------------------
 5 files changed, 164 insertions(+), 697 deletions(-)
 copy meta-arago-extras/recipes-connectivity/wpa-supplicant/{wpa-supplicant-wl18xx_r8.a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} (89%)
 create mode 100755 meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf

diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx/defconfig b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx/defconfig
index b982e2a..f357b79 100755
--- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx/defconfig
+++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx/defconfig
@@ -39,18 +39,6 @@
 #LIBS = -lssl
 ###############################################################################
 
-#CC=$(CROSS_COMPILE)gcc
-#CFLAGS += -DCONFIG_LIBNL20
-#CPPFLAGS += -DCONFIG_LIBNL20
-#LIBS += -L$(NFSROOT)/lib -lnl
-#LIBS_p += -L$(NFSROOT)/lib
-#LIBDIR = $(NFSROOT)/lib
-#BINDIR = $(NFSROOT)/usr/sbin
-
-CONFIG_WAPI=y
-CONFIG_LIBNL20=y
-NEED_BGSCAN=y
-CONFIG_BGSCAN_LEARN=y
 
 # Driver interface for Host AP driver
 #CONFIG_DRIVER_HOSTAP=y
@@ -75,7 +63,7 @@ CONFIG_BGSCAN_LEARN=y
 #CONFIG_DRIVER_ATMEL=y
 
 # Driver interface for old Broadcom driver
-# Please note that the newer Broadcom driver ("hybrid Linux driver") supportsBG
+# Please note that the newer Broadcom driver ("hybrid Linux driver") supports
 # Linux wireless extensions and does not need (or even work) with the old
 # driver wrapper. Use CONFIG_DRIVER_WEXT=y with that driver.
 #CONFIG_DRIVER_BROADCOM=y
@@ -90,16 +78,22 @@ CONFIG_BGSCAN_LEARN=y
 #CONFIG_DRIVER_RALINK=y
 
 # Driver interface for generic Linux wireless extensions
-CONFIG_DRIVER_WEXT=y
+# Note: WEXT is deprecated in the current Linux kernel version and no new
+# functionality is added to it. nl80211-based interface is the new
+# replacement for WEXT and its use allows wpa_supplicant to properly control
+# the driver to improve existing functionality like roaming and to support new
+# functionality.
+#CONFIG_DRIVER_WEXT=y
 
 # Driver interface for Linux drivers using the nl80211 kernel interface
 CONFIG_DRIVER_NL80211=y
+CONFIG_LIBNL32=y
 
 # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
 #CONFIG_DRIVER_BSD=y
 #CFLAGS += -I/usr/local/include
 #LIBS += -L/usr/local/lib
-#LIBS_p += -L/usr/local/libBG
+#LIBS_p += -L/usr/local/lib
 #LIBS_c += -L/usr/local/lib
 
 # Driver interface for Windows NDIS
@@ -121,13 +115,8 @@ CONFIG_DRIVER_NL80211=y
 # Driver interface for development testing
 #CONFIG_DRIVER_TEST=y
 
-# Include client MLME (management frame processing) for test driver
-# This can be used to test MLME operations in hostapd with the test interface.
-# space.
-#CONFIG_CLIENT_MLME=y
-
 # Driver interface for wired Ethernet drivers
-CONFIG_DRIVER_WIRED=y
+#CONFIG_DRIVER_WIRED=y
 
 # Driver interface for the Broadcom RoboSwitch family
 #CONFIG_DRIVER_ROBOSWITCH=y
@@ -163,7 +152,7 @@ CONFIG_EAP_TTLS=y
 # functionality needed for EAP-FAST. If EAP-FAST is enabled with OpenSSL,
 # the OpenSSL library must be patched (openssl-0.9.8d-tls-extensions.patch)
 # to add the needed functions.
-#CONFIG_EAP_FAST=y
+CONFIG_EAP_FAST=y
 
 # EAP-GTC
 CONFIG_EAP_GTC=y
@@ -172,11 +161,14 @@ CONFIG_EAP_GTC=y
 CONFIG_EAP_OTP=y
 
 # EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
-#CONFIG_EAP_SIM=y
+CONFIG_EAP_SIM=y
 
 # EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
 #CONFIG_EAP_PSK=y
 
+# EAP-pwd (secure authentication using only a password)
+CONFIG_EAP_PWD=y
+
 # EAP-PAX
 #CONFIG_EAP_PAX=y
 
@@ -208,6 +200,11 @@ CONFIG_EAP_LEAP=y
 CONFIG_WPS=y
 # Enable WSC 2.0 support
 CONFIG_WPS2=y
+# Enable WPS external registrar functionality
+#CONFIG_WPS_ER=y
+# Disable credentials for an open network by default when acting as a WPS
+# registrar.
+#CONFIG_WPS_REG_DISABLE_OPEN=y
 
 # EAP-IKEv2
 #CONFIG_EAP_IKEV2=y
@@ -224,7 +221,10 @@ CONFIG_SMARTCARD=y
 # Enable this if EAP-SIM or EAP-AKA is included
 #CONFIG_PCSC=y
 
-# Development testingBG
+# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
+#CONFIG_HT_OVERRIDES=y
+
+# Development testing
 #CONFIG_EAPOL_TEST=y
 
 # Select control interface backend for external programs, e.g, wpa_cli:
@@ -242,6 +242,10 @@ CONFIG_CTRL_IFACE=y
 # the resulting binary.
 #CONFIG_READLINE=y
 
+# Include internal line edit mode in wpa_cli. This can be used as a replacement
+# for GNU Readline to provide limited command line editing and history support.
+CONFIG_WPA_CLI_EDIT=y
+
 # Remove debugging code that is printing out debug message to stdout.
 # This can be used to reduce the size of the wpa_supplicant considerably
 # if debugging code is not needed. The size reduction can be around 35%
@@ -295,13 +299,16 @@ CONFIG_BACKEND=file
 # unix = UNIX/POSIX like systems (default)
 # win32 = Windows systems
 # none = Empty template
-#CONFIG_OS=unix
+CONFIG_OS=unix
 
 # Select event loop implementation
 # eloop = select() loop (default)
 # eloop_win = Windows events and WaitForMultipleObject() loop
 # eloop_none = Empty template
-#CONFIG_ELOOP=eloop
+CONFIG_ELOOP=eloop
+
+# Should we use poll instead of select? Select is used by default.
+#CONFIG_ELOOP_POLL=y
 
 # Select layer 2 packet implementation
 # linux = Linux packet socket (default)
@@ -310,7 +317,7 @@ CONFIG_BACKEND=file
 # winpcap = WinPcap with receive thread
 # ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)
 # none = Empty template
-#CONFIG_L2_PACKET=linux
+CONFIG_L2_PACKET=linux
 
 # PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
 CONFIG_PEERKEY=y
@@ -323,18 +330,24 @@ CONFIG_PEERKEY=y
 
 # Select TLS implementation
 # openssl = OpenSSL (default)
-# gnutls = GnuTLS (needed for TLS/IA, see also CONFIG_GNUTLS_EXTRA)
+# gnutls = GnuTLS
 # internal = Internal TLSv1 implementation (experimental)
 # none = Empty template
 #CONFIG_TLS=openssl
 
-# Whether to enable TLS/IA support, which is required for EAP-TTLSv1.
-# You need CONFIG_TLS=gnutls for this to have any effect. Please note that
-# even though the core GnuTLS library is released under LGPL, this extra
-# library uses GPL and as such, the terms of GPL apply to the combination
-# of wpa_supplicant and GnuTLS if this option is enabled. BSD license may not
-# apply for distribution of the resulting binary.
-#CONFIG_GNUTLS_EXTRA=y
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1)
+# can be enabled to get a stronger construction of messages when block ciphers
+# are used. It should be noted that some existing TLS v1.0 -based
+# implementation may not be compatible with TLS v1.1 message (ClientHello is
+# sent prior to negotiating which version will be used)
+#CONFIG_TLSV11=y
+
+# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2)
+# can be enabled to enable use of stronger crypto algorithms. It should be
+# noted that some existing TLS v1.0 -based implementation may not be compatible
+# with TLS v1.2 message (ClientHello is sent prior to negotiating which version
+# will be used)
+#CONFIG_TLSV12=y
 
 # If CONFIG_TLS=internal is used, additional library and include paths are
 # needed for LibTomMath. Alternatively, an integrated, minimal version of
@@ -360,14 +373,14 @@ CONFIG_PEERKEY=y
 
 # Add support for old DBus control interface
 # (fi.epitest.hostap.WPASupplicant)
-CONFIG_CTRL_IFACE_DBUS=y
+#CONFIG_CTRL_IFACE_DBUS=y
 
 # Add support for new DBus control interface
 # (fi.w1.hostap.wpa_supplicant1)
-CONFIG_CTRL_IFACE_DBUS_NEW=y
+#CONFIG_CTRL_IFACE_DBUS_NEW=y
 
 # Add introspection support for new DBus control interface
-CONFIG_CTRL_IFACE_DBUS_INTRO=y
+#CONFIG_CTRL_IFACE_DBUS_INTRO=y
 
 # Add support for loading EAP methods dynamically as shared libraries.
 # When this option is enabled, each EAP method can be either included
@@ -394,7 +407,22 @@ CONFIG_CTRL_IFACE_DBUS_INTRO=y
 #CONFIG_IEEE80211R=y
 
 # Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
-CONFIG_DEBUG_FILE=y
+#CONFIG_DEBUG_FILE=y
+
+# Send debug messages to syslog instead of stdout
+#CONFIG_DEBUG_SYSLOG=y
+# Set syslog facility for debug messages
+#CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
+
+# Add support for sending all debug messages (regardless of debug verbosity)
+# to the Linux kernel tracing facility. This helps debug the entire stack by
+# making it easy to record everything happening from the driver up into the
+# same file, e.g., using trace-cmd.
+#CONFIG_DEBUG_LINUX_TRACING=y
+
+# Add support for writing debug log to Android logcat instead of standard
+# output
+CONFIG_ANDROID_LOG=y
 
 # Enable privilege separation (see README 'Privilege separation' for details)
 #CONFIG_PRIVSEP=y
@@ -407,7 +435,7 @@ CONFIG_DEBUG_FILE=y
 # This tracks use of memory allocations and other registrations and reports
 # incorrect use with a backtrace of call (or allocation) location.
 #CONFIG_WPA_TRACE=y
-# For BSD, comment out these.
+# For BSD, uncomment these.
 #LIBS += -lexecinfo
 #LIBS_p += -lexecinfo
 #LIBS_c += -lexecinfo
@@ -416,15 +444,63 @@ CONFIG_DEBUG_FILE=y
 # This enables use of libbfd to get more detailed symbols for the backtraces
 # generated by CONFIG_WPA_TRACE=y.
 #CONFIG_WPA_TRACE_BFD=y
-# For BSD, comment out these.
+# For BSD, uncomment these.
 #LIBS += -lbfd -liberty -lz
 #LIBS_p += -lbfd -liberty -lz
 #LIBS_c += -lbfd -liberty -lz
 
-# for p2p
+# wpa_supplicant depends on strong random number generation being available
+# from the operating system. os_get_random() function is used to fetch random
+# data when needed, e.g., for key generation. On Linux and BSD systems, this
+# works by reading /dev/urandom. It should be noted that the OS entropy pool
+# needs to be properly initialized before wpa_supplicant is started. This is
+# important especially on embedded devices that do not have a hardware random
+# number generator and may by default start up with minimal entropy available
+# for random number generation.
+#
+# As a safety net, wpa_supplicant is by default trying to internally collect
+# additional entropy for generating random data to mix in with the data fetched
+# from the OS. This by itself is not considered to be very strong, but it may
+# help in cases where the system pool is not initialized properly. However, it
+# is very strongly recommended that the system pool is initialized with enough
+# entropy either by using hardware assisted random number generator or by
+# storing state over device reboots.
+#
+# wpa_supplicant can be configured to maintain its own entropy store over
+# restarts to enhance random number generation. This is not perfect, but it is
+# much more secure than using the same sequence of random numbers after every
+# reboot. This can be enabled with -e<entropy file> command line option. The
+# specified file needs to be readable and writable by wpa_supplicant.
+#
+# If the os_get_random() is known to provide strong random data (e.g., on
+# Linux/BSD, the board in question is known to have reliable source of random
+# data from /dev/urandom), the internal wpa_supplicant random pool can be
+# disabled. This will save some in binary size and CPU use. However, this
+# should only be considered for builds that are known to be used on devices
+# that meet the requirements described above.
+#CONFIG_NO_RANDOM_POOL=y
+
+# IEEE 802.11n (High Throughput) support (mainly for AP mode)
+CONFIG_IEEE80211N=y
+
+# Interworking (IEEE 802.11u)
+# This can be used to enable functionality to improve interworking with
+# external networks (GAS/ANQP to learn more about the networks and network
+# selection based on available credentials).
+CONFIG_INTERWORKING=y
+
+# Hotspot 2.0
+CONFIG_HS20=y
+
+# Disable roaming in wpa_supplicant
+#CONFIG_NO_ROAMING=y
+
+# Enable P2P
 CONFIG_P2P=y
 CONFIG_AP=y
 
-# IEEE 802.11n (High Throughput) support
-CONFIG_IEEE80211N=y
+# bgscan
+NEED_BGSCAN=y
+CONFIG_BGSCAN_LEARN=y
+CONFIG_BGSCAN_SIMPLE=y
 
diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
similarity index 89%
copy from meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb
copy to meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
index f6c4f70..d9a9fde 100644
--- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb
+++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
@@ -10,9 +10,9 @@ LIC_FILES_CHKSUM = "file://../COPYING;md5=ab87f20cd7e8c0d0a6539b34d3791d0e \
 
 FILESEXTRAPATHS_append := "${THISDIR}/wpa-supplicant:"
 
-# Tag: ol_r8.a6.01
-SRCREV = "7190ff7dbd43243290b626068ded0d61c5019050"
-PR = "r2+gitr${SRCPV}"
+# Tag: ol_r8.a8.08
+SRCREV = "257ab333aad993b4be81808524bc0d939c276058"
+PR = "r0+gitr${SRCPV}"
 
 # Add ti to the PV to indicate that this is a TI modify version of wpa-supplicant.
 PV = "2.0-devel-ti"
diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc
index 2d8970f..ef40a83 100644
--- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc
+++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc
@@ -21,6 +21,7 @@ SRC_URI = "git://github.com/TI-OpenLink/hostap.git;protocol=git \
            file://defaults-sane \
            file://wpa-supplicant.sh \
            file://wpa_supplicant.conf \
+           file://p2p_supplicant.conf \
            file://wpa_supplicant.conf-sane \
            file://99_wpa_supplicant \
            file://wpa_supplicant.conf \
@@ -55,6 +56,7 @@ do_install () {
 	install -d ${D}${sysconfdir}/default
 	install -m 600 ${WORKDIR}/defaults-sane ${D}${sysconfdir}/default/wpa
 	install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
+        install -m 600 ${WORKDIR}/p2p_supplicant.conf ${D}${sysconfdir}/p2p_supplicant.conf
 
 	if grep -q ^CONFIG_CTRL_IFACE_DBUS=y .config || grep -q ^CONFIG_CTRL_IFACE_DBUS_NEW=y .config; then
 		install -d ${D}/${sysconfdir}/dbus-1/system.d
@@ -104,6 +106,7 @@ pkg_postinst_wpa-supplicant () {
 do_configure () {
 	install -m 0755 ${WORKDIR}/defconfig .config
 	echo "CFLAGS += -I${STAGING_INCDIR}" >> .config
+        echo "CFLAGS += -I${STAGING_INCDIR}/libnl3/" >> .config
 	echo "LIBS += -L${STAGING_LIBDIR}" >> .config
 	echo "LIBS_p += -L${STAGING_LIBDIR}" >> .config
 	if [ "${@base_contains('COMBINED_FEATURES', 'madwifi', 1, 0, d)}" = "1" ]; then
diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf
new file mode 100755
index 0000000..2de8730
--- /dev/null
+++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf
@@ -0,0 +1,14 @@
+ctrl_interface=/var/run/wpa_supplicant
+update_config=0
+device_name=TI-SITARA-P2P
+device_type=1-0050F204-1
+config_methods=virtual_push_button physical_display keypad
+p2p_go_intent=0
+country=US
+##p2p_pref_chan=115:36 115:40
+driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
+p2p_go_max_inactivity=60
+p2p_go_ht40=1
+p2p_multi_chan=1
+disassoc_low_ack=1
+concurrent_sched_scan=1
diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
index f0c993d..f144a38 100644
--- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
+++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
@@ -1,19 +1,4 @@
-##### Example wpa_supplicant configuration file ###############################
-#
-# This file describes configuration file format and lists all available option.
-# Please also take a look at simpler configuration examples in 'examples'
-# subdirectory.
-#
-# Empty lines and lines starting with # are ignored
-
-# NOTE! This file may contain password information and should probably be made
-# readable only by root user on multiuser systems.
-
-# Note: All file paths in this configuration file should use full (absolute,
-# not relative to working directory) path in order to allow working directory
-# to be changed. This can happen if wpa_supplicant is run in the background.
-
-# Whether to allow wpa_supplicant to update (overwrite) configuration
+##### wpa_supplicant configuration file template #####
 #
 # This option can be used to allow wpa_supplicant to overwrite configuration
 # file whenever configuration is changed (e.g., new network block is added with
@@ -21,59 +6,8 @@
 # wpa_cli/wpa_gui to be able to store the configuration changes permanently.
 # Please note that overwriting configuration file will remove the comments from
 # it.
-#update_config=1
-
-# global configuration (shared by all network blocks)
-#
-# Parameters for the control interface. If this is specified, wpa_supplicant
-# will open a control interface that is available for external programs to
-# manage wpa_supplicant. The meaning of this string depends on which control
-# interface mechanism is used. For all cases, the existance of this parameter
-# in configuration is used to determine whether the control interface is
-# enabled.
-#
-# For UNIX domain sockets (default on Linux and BSD): This is a directory that
-# will be created for UNIX domain sockets for listening to requests from
-# external programs (CLI/GUI, etc.) for status information and configuration.
-# The socket file will be named based on the interface name, so multiple
-# wpa_supplicant processes can be run at the same time if more than one
-# interface is used.
-# /var/run/wpa_supplicant is the recommended directory for sockets and by
-# default, wpa_cli will use it when trying to connect with wpa_supplicant.
-#
-# Access control for the control interface can be configured by setting the
-# directory to allow only members of a group to use sockets. This way, it is
-# possible to run wpa_supplicant as root (since it needs to change network
-# configuration and open raw sockets) and still allow GUI/CLI components to be
-# run as non-root users. However, since the control interface can be used to
-# change the network configuration, this access needs to be protected in many
-# cases. By default, wpa_supplicant is configured to use gid 0 (root). If you
-# want to allow non-root users to use the control interface, add a new group
-# and change this value to match with that group. Add users that should have
-# control interface access to this group. If this variable is commented out or
-# not included in the configuration file, group will not be changed from the
-# value it got by default when the directory or socket was created.
-#
-# When configuring both the directory and group, use following format:
-# DIR=/var/run/wpa_supplicant GROUP=wheel
-# DIR=/var/run/wpa_supplicant GROUP=0
-# (group can be either group name or gid)
-#
-# For UDP connections (default on Windows): The value will be ignored. This
-# variable is just used to select that the control interface is to be created.
-# The value can be set to, e.g., udp (ctrl_interface=udp)
-#
-# For Windows Named Pipe: This value can be used to set the security descriptor
-# for controlling access to the control interface. Security descriptor can be
-# set using Security Descriptor String Format (see http://msdn.microsoft.com/
-# library/default.asp?url=/library/en-us/secauthz/security/
-# security_descriptor_string_format.asp). The descriptor string needs to be
-# prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty
-# DACL (which will reject all connections). See README-Windows.txt for more
-# information about SDDL string format.
-#
+update_config=1
 ctrl_interface=/var/run/wpa_supplicant
-
 # IEEE 802.1X/EAPOL version
 # wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines
 # EAPOL version 2. However, there are many APs that do not handle the new
@@ -82,14 +16,15 @@ ctrl_interface=/var/run/wpa_supplicant
 # to 1 by default. This configuration value can be used to set it to the new
 # version (2).
 eapol_version=1
-
 # AP scanning/selection
 # By default, wpa_supplicant requests driver to perform AP scanning and then
 # uses the scan results to select a suitable AP. Another alternative is to
 # allow the driver to take care of AP scanning and selection and use
 # wpa_supplicant just to process EAPOL frames based on IEEE 802.11 association
 # information from the driver.
-# 1: wpa_supplicant initiates scanning and AP selection
+# 1: wpa_supplicant initiates scanning and AP selection; if no APs matching to
+#    the currently enabled networks are found, a new network (IBSS or AP mode
+#    operation) may be initialized (if configured) (default)
 # 0: driver takes care of scanning, AP selection, and IEEE 802.11 association
 #    parameters (e.g., WPA IE generation); this mode can also be used with
 #    non-WPA drivers when using IEEE 802.1X mode; do not try to associate with
@@ -102,589 +37,28 @@ eapol_version=1
 #    the driver reports successful association; each network block should have
 #    explicit security policy (i.e., only one option in the lists) for
 #    key_mgmt, pairwise, group, proto variables
+# When using IBSS or AP mode, ap_scan=2 mode can force the new network to be
+# created immediately regardless of scan results. ap_scan=1 mode will first try
+# to scan for existing networks and only if no matches with the enabled
+# networks are found, a new IBSS or AP mode network is created.
 ap_scan=1
-
 # EAP fast re-authentication
 # By default, fast re-authentication is enabled for all EAP methods that
 # support it. This variable can be used to disable fast re-authentication.
 # Normally, there is no need to disable this.
 fast_reauth=1
-
-# OpenSSL Engine support
-# These options can be used to load OpenSSL engines.
-# The two engines that are supported currently are shown below:
-# They are both from the opensc project (http://www.opensc.org/)
-# By default no engines are loaded.
-# make the opensc engine available
-#opensc_engine_path=/usr/lib/opensc/engine_opensc.so
-# make the pkcs11 engine available
-#pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
-# configure the path to the pkcs11 module required by the pkcs11 engine
-#pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so
-
-# Dynamic EAP methods
-# If EAP methods were built dynamically as shared object files, they need to be
-# loaded here before being used in the network blocks. By default, EAP methods
-# are included statically in the build, so these lines are not needed
-#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so
-#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so
-
-# Driver interface parameters
-# This field can be used to configure arbitrary driver interace parameters. The
-# format is specific to the selected driver interface. This field is not used
-# in most cases.
-#driver_param="field=value"
-
-# Maximum lifetime for PMKSA in seconds; default 43200
-#dot11RSNAConfigPMKLifetime=43200
-# Threshold for reauthentication (percentage of PMK lifetime); default 70
-#dot11RSNAConfigPMKReauthThreshold=70
-# Timeout for security association negotiation in seconds; default 60
-#dot11RSNAConfigSATimeout=60
-
-# network block
-#
-# Each network (usually AP's sharing the same SSID) is configured as a separate
-# block in this configuration file. The network blocks are in preference order
-# (the first match is used).
-#
-# network block fields:
-#
-# disabled:
-#	0 = this network can be used (default)
-#	1 = this network block is disabled (can be enabled through ctrl_iface,
-#	    e.g., with wpa_cli or wpa_gui)
-#
-# id_str: Network identifier string for external scripts. This value is passed
-#	to external action script through wpa_cli as WPA_ID_STR environment
-#	variable to make it easier to do network specific configuration.
-#
-# ssid: SSID (mandatory); either as an ASCII string with double quotation or
-#	as hex string; network name
-#
-# scan_ssid:
-#	0 = do not scan this SSID with specific Probe Request frames (default)
-#	1 = scan with SSID-specific Probe Request frames (this can be used to
-#	    find APs that do not accept broadcast SSID or use multiple SSIDs;
-#	    this will add latency to scanning, so enable this only when needed)
-#
-# bssid: BSSID (optional); if set, this network block is used only when
-#	associating with the AP using the configured BSSID
-#
-# priority: priority group (integer)
-# By default, all networks will get same priority group (0). If some of the
-# networks are more desirable, this field can be used to change the order in
-# which wpa_supplicant goes through the networks when selecting a BSS. The
-# priority groups will be iterated in decreasing priority (i.e., the larger the
-# priority value, the sooner the network is matched against the scan results).
-# Within each priority group, networks will be selected based on security
-# policy, signal strength, etc.
-# Please note that AP scanning with scan_ssid=1 and ap_scan=2 mode are not
-# using this priority to select the order for scanning. Instead, they try the
-# networks in the order that used in the configuration file.
-#
-# mode: IEEE 802.11 operation mode
-# 0 = infrastructure (Managed) mode, i.e., associate with an AP (default)
-# 1 = IBSS (ad-hoc, peer-to-peer)
-# Note: IBSS can only be used with key_mgmt NONE (plaintext and static WEP)
-# and key_mgmt=WPA-NONE (fixed group key TKIP/CCMP). In addition, ap_scan has
-# to be set to 2 for IBSS. WPA-None requires following network block options:
-# proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP (or CCMP, but not
-# both), and psk must also be set.
-#
-# proto: list of accepted protocols
-# WPA = WPA/IEEE 802.11i/D3.0
-# RSN = WPA2/IEEE 802.11i (also WPA2 can be used as an alias for RSN)
-# If not set, this defaults to: WPA RSN
-#
-# key_mgmt: list of accepted authenticated key management protocols
-# WPA-PSK = WPA pre-shared key (this requires 'psk' field)
-# WPA-EAP = WPA using EAP authentication (this can use an external
-#	program, e.g., Xsupplicant, for IEEE 802.1X EAP Authentication
-# IEEE8021X = IEEE 802.1X using EAP authentication and (optionally) dynamically
-#	generated WEP keys
-# NONE = WPA is not used; plaintext or static WEP could be used
-# If not set, this defaults to: WPA-PSK WPA-EAP
-#
-# auth_alg: list of allowed IEEE 802.11 authentication algorithms
-# OPEN = Open System authentication (required for WPA/WPA2)
-# SHARED = Shared Key authentication (requires static WEP keys)
-# LEAP = LEAP/Network EAP (only used with LEAP)
-# If not set, automatic selection is used (Open System with LEAP enabled if
-# LEAP is allowed as one of the EAP methods).
-#
-# pairwise: list of accepted pairwise (unicast) ciphers for WPA
-# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
-# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
-# NONE = Use only Group Keys (deprecated, should not be included if APs support
-#	pairwise keys)
-# If not set, this defaults to: CCMP TKIP
-#
-# group: list of accepted group (broadcast/multicast) ciphers for WPA
-# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
-# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
-# WEP104 = WEP (Wired Equivalent Privacy) with 104-bit key
-# WEP40 = WEP (Wired Equivalent Privacy) with 40-bit key [IEEE 802.11]
-# If not set, this defaults to: CCMP TKIP WEP104 WEP40
-#
-# psk: WPA preshared key; 256-bit pre-shared key
-# The key used in WPA-PSK mode can be entered either as 64 hex-digits, i.e.,
-# 32 bytes or as an ASCII passphrase (in which case, the real PSK will be
-# generated using the passphrase and SSID). ASCII passphrase must be between
-# 8 and 63 characters (inclusive).
-# This field is not needed, if WPA-EAP is used.
-# Note: Separate tool, wpa_passphrase, can be used to generate 256-bit keys
-# from ASCII passphrase. This process uses lot of CPU and wpa_supplicant
-# startup and reconfiguration time can be optimized by generating the PSK only
-# only when the passphrase or SSID has actually changed.
-#
-# eapol_flags: IEEE 802.1X/EAPOL options (bit field)
-# Dynamic WEP key required for non-WPA mode
-# bit0 (1): require dynamically generated unicast WEP key
-# bit1 (2): require dynamically generated broadcast WEP key
-# 	(3 = require both keys; default)
-# Note: When using wired authentication, eapol_flags must be set to 0 for the
-# authentication to be completed successfully.
-#
-# proactive_key_caching:
-# Enable/disable opportunistic PMKSA caching for WPA2.
-# 0 = disabled (default)
-# 1 = enabled
-#
-# wep_key0..3: Static WEP key (ASCII in double quotation, e.g. "abcde" or
-# hex without quotation, e.g., 0102030405)
-# wep_tx_keyidx: Default WEP key index (TX) (0..3)
-#
-# peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e DLS) is
-# allowed. This is only used with RSN/WPA2.
-# 0 = disabled (default)
-# 1 = enabled
-#peerkey=1
-#
-# Following fields are only used with internal EAP implementation.
-# eap: space-separated list of accepted EAP methods
-#	MD5 = EAP-MD5 (unsecure and does not generate keying material ->
-#			cannot be used with WPA; to be used as a Phase 2 method
-#			with EAP-PEAP or EAP-TTLS)
-#       MSCHAPV2 = EAP-MSCHAPv2 (cannot be used separately with WPA; to be used
-#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
-#       OTP = EAP-OTP (cannot be used separately with WPA; to be used
-#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
-#       GTC = EAP-GTC (cannot be used separately with WPA; to be used
-#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
-#	TLS = EAP-TLS (client and server certificate)
-#	PEAP = EAP-PEAP (with tunnelled EAP authentication)
-#	TTLS = EAP-TTLS (with tunnelled EAP or PAP/CHAP/MSCHAP/MSCHAPV2
-#			 authentication)
-#	If not set, all compiled in methods are allowed.
-#
-# identity: Identity string for EAP
-# anonymous_identity: Anonymous identity string for EAP (to be used as the
-#	unencrypted identity with EAP types that support different tunnelled
-#	identity, e.g., EAP-TTLS)
-# password: Password string for EAP
-# ca_cert: File path to CA certificate file (PEM/DER). This file can have one
-#	or more trusted CA certificates. If ca_cert and ca_path are not
-#	included, server certificate will not be verified. This is insecure and
-#	a trusted CA certificate should always be configured when using
-#	EAP-TLS/TTLS/PEAP. Full path should be used since working directory may
-#	change when wpa_supplicant is run in the background.
-#	On Windows, trusted CA certificates can be loaded from the system
-#	certificate store by setting this to cert_store://<name>, e.g.,
-#	ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT".
-#	Note that when running wpa_supplicant as an application, the user
-#	certificate store (My user account) is used, whereas computer store
-#	(Computer account) is used when running wpasvc as a service.
-# ca_path: Directory path for CA certificate files (PEM). This path may
-#	contain multiple CA certificates in OpenSSL format. Common use for this
-#	is to point to system trusted CA list which is often installed into
-#	directory like /etc/ssl/certs. If configured, these certificates are
-#	added to the list of trusted CAs. ca_cert may also be included in that
-#	case, but it is not required.
-# client_cert: File path to client certificate file (PEM/DER)
-#	Full path should be used since working directory may change when
-#	wpa_supplicant is run in the background.
-#	Alternatively, a named configuration blob can be used by setting this
-#	to blob://<blob name>.
-# private_key: File path to client private key file (PEM/DER/PFX)
-#	When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be
-#	commented out. Both the private key and certificate will be read from
-#	the PKCS#12 file in this case. Full path should be used since working
-#	directory may change when wpa_supplicant is run in the background.
-#	Windows certificate store can be used by leaving client_cert out and
-#	configuring private_key in one of the following formats:
-#	cert://substring_to_match
-#	hash://certificate_thumbprint_in_hex
-#	for example: private_key="hash://63093aa9c47f56ae88334c7b65a4"
-#	Note that when running wpa_supplicant as an application, the user
-#	certificate store (My user account) is used, whereas computer store
-#	(Computer account) is used when running wpasvc as a service.
-#	Alternatively, a named configuration blob can be used by setting this
-#	to blob://<blob name>.
-# private_key_passwd: Password for private key file (if left out, this will be
-#	asked through control interface)
-# dh_file: File path to DH/DSA parameters file (in PEM format)
-#	This is an optional configuration file for setting parameters for an
-#	ephemeral DH key exchange. In most cases, the default RSA
-#	authentication does not use this configuration. However, it is possible
-#	setup RSA to use ephemeral DH key exchange. In addition, ciphers with
-#	DSA keys always use ephemeral DH keys. This can be used to achieve
-#	forward secrecy. If the file is in DSA parameters format, it will be
-#	automatically converted into DH params.
-# subject_match: Substring to be matched against the subject of the
-#	authentication server certificate. If this string is set, the server
-#	sertificate is only accepted if it contains this string in the subject.
-#	The subject string is in following format:
-#	/C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com
-# altsubject_match: Semicolon separated string of entries to be matched against
-#	the alternative subject name of the authentication server certificate.
-#	If this string is set, the server sertificate is only accepted if it
-#	contains one of the entries in an alternative subject name extension.
-#	altSubjectName string is in following format: TYPE:VALUE
-#	Example: EMAIL:server@example.com
-#	Example: DNS:server.example.com;DNS:server2.example.com
-#	Following types are supported: EMAIL, DNS, URI
-# phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters
-#	(string with field-value pairs, e.g., "peapver=0" or
-#	"peapver=1 peaplabel=1")
-#	'peapver' can be used to force which PEAP version (0 or 1) is used.
-#	'peaplabel=1' can be used to force new label, "client PEAP encryption",
-#	to be used during key derivation when PEAPv1 or newer. Most existing
-#	PEAPv1 implementation seem to be using the old label, "client EAP
-#	encryption", and wpa_supplicant is now using that as the default value.
-#	Some servers, e.g., Radiator, may require peaplabel=1 configuration to
-#	interoperate with PEAPv1; see eap_testing.txt for more details.
-#	'peap_outer_success=0' can be used to terminate PEAP authentication on
-#	tunneled EAP-Success. This is required with some RADIUS servers that
-#	implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g.,
-#	Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode)
-#	include_tls_length=1 can be used to force wpa_supplicant to include
-#	TLS Message Length field in all TLS messages even if they are not
-#	fragmented.
-#	sim_min_num_chal=3 can be used to configure EAP-SIM to require three
-#	challenges (by default, it accepts 2 or 3)
-# phase2: Phase2 (inner authentication with TLS tunnel) parameters
-#	(string with field-value pairs, e.g., "auth=MSCHAPV2" for EAP-PEAP or
-#	"autheap=MSCHAPV2 autheap=MD5" for EAP-TTLS)
-# Following certificate/private key fields are used in inner Phase2
-# authentication when using EAP-TTLS or EAP-PEAP.
-# ca_cert2: File path to CA certificate file. This file can have one or more
-#	trusted CA certificates. If ca_cert2 and ca_path2 are not included,
-#	server certificate will not be verified. This is insecure and a trusted
-#	CA certificate should always be configured.
-# ca_path2: Directory path for CA certificate files (PEM)
-# client_cert2: File path to client certificate file
-# private_key2: File path to client private key file
-# private_key2_passwd: Password for private key file
-# dh_file2: File path to DH/DSA parameters file (in PEM format)
-# subject_match2: Substring to be matched against the subject of the
-#	authentication server certificate.
-# altsubject_match2: Substring to be matched against the alternative subject
-#	name of the authentication server certificate.
-#
-# fragment_size: Maximum EAP fragment size in bytes (default 1398).
-#	This value limits the fragment size for EAP methods that support
-#	fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set
-#	small enough to make the EAP messages fit in MTU of the network
-#	interface used for EAPOL. The default value is suitable for most
-#	cases.
-#
-# EAP-PSK variables:
-# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
-# nai: user NAI
-#
-# EAP-PAX variables:
-# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
-#
-# EAP-SAKE variables:
-# eappsk: 32-byte (256-bit, 64 hex digits) pre-shared key in hex format
-#	(this is concatenation of Root-Secret-A and Root-Secret-B)
-# nai: user NAI (PEERID)
-#
-# EAP-GPSK variables:
-# eappsk: Pre-shared key in hex format (at least 128 bits, i.e., 32 hex digits)
-# nai: user NAI (ID_Client)
-#
-# EAP-FAST variables:
-# pac_file: File path for the PAC entries. wpa_supplicant will need to be able
-#	to create this file and write updates to it when PAC is being
-#	provisioned or refreshed. Full path to the file should be used since
-#	working directory may change when wpa_supplicant is run in the
-#	background. Alternatively, a named configuration blob can be used by
-#	setting this to blob://<blob name>
-# phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST
-#	credentials (PAC)
-#
-# wpa_supplicant supports number of "EAP workarounds" to work around
-# interoperability issues with incorrectly behaving authentication servers.
-# These are enabled by default because some of the issues are present in large
-# number of authentication servers. Strict EAP conformance mode can be
-# configured by disabling workarounds with eap_workaround=0.
-
-# Example blocks:
-
-# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
-network={
-	ssid="simple"
-	psk="very secret passphrase"
-	priority=5
-}
-
-# Same as previous, but request SSID-specific scanning (for APs that reject
-# broadcast SSID)
-network={
-	ssid="second ssid"
-	scan_ssid=1
-	psk="very secret passphrase"
-	priority=2
-}
-
-# Only WPA-PSK is used. Any valid cipher combination is accepted.
-network={
-	ssid="example"
-	proto=WPA
-	key_mgmt=WPA-PSK
-	pairwise=CCMP TKIP
-	group=CCMP TKIP WEP104 WEP40
-	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
-	priority=2
-}
-
-# Only WPA-EAP is used. Both CCMP and TKIP is accepted. An AP that used WEP104
-# or WEP40 as the group cipher will not be accepted.
-network={
-	ssid="example"
-	proto=RSN
-	key_mgmt=WPA-EAP
-	pairwise=CCMP TKIP
-	group=CCMP TKIP
-	eap=TLS
-	identity="user@example.com"
-	ca_cert="/etc/cert/ca.pem"
-	client_cert="/etc/cert/user.pem"
-	private_key="/etc/cert/user.prv"
-	private_key_passwd="password"
-	priority=1
-}
-
-# EAP-PEAP/MSCHAPv2 configuration for RADIUS servers that use the new peaplabel
-# (e.g., Radiator)
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=PEAP
-	identity="user@example.com"
-	password="foobar"
-	ca_cert="/etc/cert/ca.pem"
-	phase1="peaplabel=1"
-	phase2="auth=MSCHAPV2"
-	priority=10
-}
-
-# EAP-TTLS/EAP-MD5-Challenge configuration with anonymous identity for the
-# unencrypted use. Real identity is sent only within an encrypted TLS tunnel.
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=TTLS
-	identity="user@example.com"
-	anonymous_identity="anonymous@example.com"
-	password="foobar"
-	ca_cert="/etc/cert/ca.pem"
-	priority=2
-}
-
-# EAP-TTLS/MSCHAPv2 configuration with anonymous identity for the unencrypted
-# use. Real identity is sent only within an encrypted TLS tunnel.
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=TTLS
-	identity="user@example.com"
-	anonymous_identity="anonymous@example.com"
-	password="foobar"
-	ca_cert="/etc/cert/ca.pem"
-	phase2="auth=MSCHAPV2"
-}
-
-# WPA-EAP, EAP-TTLS with different CA certificate used for outer and inner
-# authentication.
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=TTLS
-	# Phase1 / outer authentication
-	anonymous_identity="anonymous@example.com"
-	ca_cert="/etc/cert/ca.pem"
-	# Phase 2 / inner authentication
-	phase2="autheap=TLS"
-	ca_cert2="/etc/cert/ca2.pem"
-	client_cert2="/etc/cer/user.pem"
-	private_key2="/etc/cer/user.prv"
-	private_key2_passwd="password"
-	priority=2
-}
-
-# Both WPA-PSK and WPA-EAP is accepted. Only CCMP is accepted as pairwise and
-# group cipher.
-network={
-	ssid="example"
-	bssid=00:11:22:33:44:55
-	proto=WPA RSN
-	key_mgmt=WPA-PSK WPA-EAP
-	pairwise=CCMP
-	group=CCMP
-	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
-}
-
-# Special characters in SSID, so use hex string. Default to WPA-PSK, WPA-EAP
-# and all valid ciphers.
-network={
-	ssid=00010203
-	psk=000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
-}
-
-
-# IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using
-# EAP-TLS for authentication and key generation; require both unicast and
-# broadcast WEP keys.
-network={
-	ssid="1x-test"
-	key_mgmt=IEEE8021X
-	eap=TLS
-	identity="user@example.com"
-	ca_cert="/etc/cert/ca.pem"
-	client_cert="/etc/cert/user.pem"
-	private_key="/etc/cert/user.prv"
-	private_key_passwd="password"
-	eapol_flags=3
-}
-
-
-# LEAP with dynamic WEP keys
-network={
-	ssid="leap-example"
-	key_mgmt=IEEE8021X
-	eap=LEAP
-	identity="user"
-	password="foobar"
-}
-
-# Plaintext connection (no WPA, no IEEE 802.1X)
-network={
-	ssid="plaintext-test"
-	key_mgmt=NONE
-}
-
-
-# Shared WEP key connection (no WPA, no IEEE 802.1X)
-network={
-	ssid="static-wep-test"
-	key_mgmt=NONE
-	wep_key0="abcde"
-	wep_key1=0102030405
-	wep_key2="1234567890123"
-	wep_tx_keyidx=0
-	priority=5
-}
-
-
-# Shared WEP key connection (no WPA, no IEEE 802.1X) using Shared Key
-# IEEE 802.11 authentication
-network={
-	ssid="static-wep-test2"
-	key_mgmt=NONE
-	wep_key0="abcde"
-	wep_key1=0102030405
-	wep_key2="1234567890123"
-	wep_tx_keyidx=0
-	priority=5
-	auth_alg=SHARED
-}
-
-
-# IBSS/ad-hoc network with WPA-None/TKIP.
-network={
-	ssid="test adhoc"
-	mode=1
-	proto=WPA
-	key_mgmt=WPA-NONE
-	pairwise=NONE
-	group=TKIP
-	psk="secret passphrase"
-}
-
-
-# Catch all example that allows more or less all configuration modes
-network={
-	ssid="example"
-	scan_ssid=1
-	key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
-	pairwise=CCMP TKIP
-	group=CCMP TKIP WEP104 WEP40
-	psk="very secret passphrase"
-	eap=TTLS PEAP TLS
-	identity="user@example.com"
-	password="foobar"
-	ca_cert="/etc/cert/ca.pem"
-	client_cert="/etc/cert/user.pem"
-	private_key="/etc/cert/user.prv"
-	private_key_passwd="password"
-	phase1="peaplabel=0"
-}
-
-# Example of EAP-TLS with smartcard (openssl engine)
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=TLS
-	proto=RSN
-	pairwise=CCMP TKIP
-	group=CCMP TKIP
-	identity="user@example.com"
-	ca_cert="/etc/cert/ca.pem"
-	client_cert="/etc/cert/user.pem"
-
-	engine=1
-
-	# The engine configured here must be available. Look at
-	# OpenSSL engine support in the global section.
-	# The key available through the engine must be the private key
-	# matching the client certificate configured above.
-
-	# use the opensc engine
-	#engine_id="opensc"
-	#key_id="45"
-
-	# use the pkcs11 engine
-	engine_id="pkcs11"
-	key_id="id_45"
-
-	# Optional PIN configuration; this can be left out and PIN will be
-	# asked through the control interface
-	pin="1234"
-}
-
-# Example configuration showing how to use an inlined blob as a CA certificate
-# data instead of using external file
-network={
-	ssid="example"
-	key_mgmt=WPA-EAP
-	eap=TTLS
-	identity="user@example.com"
-	anonymous_identity="anonymous@example.com"
-	password="foobar"
-	ca_cert="blob://exampleblob"
-	priority=20
-}
-
-blob-base64-exampleblob={
-SGVsbG8gV29ybGQhCg==
-}
-
-
-# Wildcard match for SSID (plaintext APs only). This example select any
-# open AP regardless of its SSID.
-network={
-	key_mgmt=NONE
-}
+device_name=Blaze
+manufacturer=TI
+model_name=Wilink
+model_number=wl18xx
+serial_number=12345
+driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
+# Timeout in seconds to detect STA inactivity (default: 300 seconds)
+#
+# This timeout value is used in P2P GO mode to clean up
+# inactive stations.
+p2p_go_max_inactivity=60
+p2p_go_ht40=1
+p2p_multi_chan=1
+disassoc_low_ack=1
+concurrent_sched_scan=1
-- 
1.7.9



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version.
  2013-11-28 11:32 [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version Yaniv Mahani
@ 2013-11-30 17:28 ` Cooper Jr., Franklin
  2013-12-04  7:05 ` Denys Dmytriyenko
  1 sibling, 0 replies; 3+ messages in thread
From: Cooper Jr., Franklin @ 2013-11-30 17:28 UTC (permalink / raw)
  To: Machani, Yaniv, meta-arago@arago-project.org

I was initial confused why the below was needed but looking at the wpa-supplicant-2.0.inc I see that the same was done.
echo "CFLAGS += -I${STAGING_INCDIR}/libnl3/" >> .config

As long as there are no spacing issues this patch looks good to me
Acked-by: Franklin Cooper Jr. <fcooper@ti.com>

> -----Original Message-----
> From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
> bounces@arago-project.org] On Behalf Of Machani, Yaniv
> Sent: Thursday, November 28, 2013 5:32 AM
> To: meta-arago@arago-project.org
> Subject: [meta-arago] [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to
> ol_r8.a8.08 version.
> 
> From: Yaniv Machani <yanivma@ti.com>
> 
> - Build wpa-supplicant from TI_Openlink ol_r8.a8.08
> - Add missing includes for building with libnl3.
> - Adjusted configuration files, and added p2p conf.
> 
> Signed-off-by: Yaniv Machani <yanivma@ti.com>
> ---
>  .../wpa-supplicant/wpa-supplicant-wl18xx/defconfig |  164 ++++--
>  ....a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} |    6 +-
>  .../wpa-supplicant/wpa-supplicant.inc              |    3 +
>  .../wpa-supplicant/p2p_supplicant.conf             |   14 +
>  .../wpa-supplicant/wpa_supplicant.conf             |  674 +-------------------
>  5 files changed, 164 insertions(+), 697 deletions(-)  copy meta-arago-
> extras/recipes-connectivity/wpa-supplicant/{wpa-supplicant-
> wl18xx_r8.a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} (89%)  create
> mode 100755 meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant/p2p_supplicant.conf
> 
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant-wl18xx/defconfig b/meta-arago-extras/recipes-connectivity/wpa-
> supplicant/wpa-supplicant-wl18xx/defconfig
> index b982e2a..f357b79 100755
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-
> wl18xx/defconfig
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplica
> +++ nt-wl18xx/defconfig
> @@ -39,18 +39,6 @@
>  #LIBS = -lssl
> 
> #############################################################
> ##################
> 
> -#CC=$(CROSS_COMPILE)gcc
> -#CFLAGS += -DCONFIG_LIBNL20
> -#CPPFLAGS += -DCONFIG_LIBNL20
> -#LIBS += -L$(NFSROOT)/lib -lnl
> -#LIBS_p += -L$(NFSROOT)/lib
> -#LIBDIR = $(NFSROOT)/lib
> -#BINDIR = $(NFSROOT)/usr/sbin
> -
> -CONFIG_WAPI=y
> -CONFIG_LIBNL20=y
> -NEED_BGSCAN=y
> -CONFIG_BGSCAN_LEARN=y
> 
>  # Driver interface for Host AP driver
>  #CONFIG_DRIVER_HOSTAP=y
> @@ -75,7 +63,7 @@ CONFIG_BGSCAN_LEARN=y
>  #CONFIG_DRIVER_ATMEL=y
> 
>  # Driver interface for old Broadcom driver -# Please note that the newer
> Broadcom driver ("hybrid Linux driver") supportsBG
> +# Please note that the newer Broadcom driver ("hybrid Linux driver")
> +supports
>  # Linux wireless extensions and does not need (or even work) with the old  #
> driver wrapper. Use CONFIG_DRIVER_WEXT=y with that driver.
>  #CONFIG_DRIVER_BROADCOM=y
> @@ -90,16 +78,22 @@ CONFIG_BGSCAN_LEARN=y
> #CONFIG_DRIVER_RALINK=y
> 
>  # Driver interface for generic Linux wireless extensions -
> CONFIG_DRIVER_WEXT=y
> +# Note: WEXT is deprecated in the current Linux kernel version and no
> +new # functionality is added to it. nl80211-based interface is the new
> +# replacement for WEXT and its use allows wpa_supplicant to properly
> +control # the driver to improve existing functionality like roaming and
> +to support new # functionality.
> +#CONFIG_DRIVER_WEXT=y
> 
>  # Driver interface for Linux drivers using the nl80211 kernel interface
> CONFIG_DRIVER_NL80211=y
> +CONFIG_LIBNL32=y
> 
>  # Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
> #CONFIG_DRIVER_BSD=y  #CFLAGS += -I/usr/local/include  #LIBS += -
> L/usr/local/lib -#LIBS_p += -L/usr/local/libBG
> +#LIBS_p += -L/usr/local/lib
>  #LIBS_c += -L/usr/local/lib
> 
>  # Driver interface for Windows NDIS
> @@ -121,13 +115,8 @@ CONFIG_DRIVER_NL80211=y  # Driver interface for
> development testing  #CONFIG_DRIVER_TEST=y
> 
> -# Include client MLME (management frame processing) for test driver -# This
> can be used to test MLME operations in hostapd with the test interface.
> -# space.
> -#CONFIG_CLIENT_MLME=y
> -
>  # Driver interface for wired Ethernet drivers -CONFIG_DRIVER_WIRED=y
> +#CONFIG_DRIVER_WIRED=y
> 
>  # Driver interface for the Broadcom RoboSwitch family
> #CONFIG_DRIVER_ROBOSWITCH=y @@ -163,7 +152,7 @@
> CONFIG_EAP_TTLS=y  # functionality needed for EAP-FAST. If EAP-FAST is
> enabled with OpenSSL,  # the OpenSSL library must be patched (openssl-0.9.8d-
> tls-extensions.patch)
>  # to add the needed functions.
> -#CONFIG_EAP_FAST=y
> +CONFIG_EAP_FAST=y
> 
>  # EAP-GTC
>  CONFIG_EAP_GTC=y
> @@ -172,11 +161,14 @@ CONFIG_EAP_GTC=y
>  CONFIG_EAP_OTP=y
> 
>  # EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used) -#CONFIG_EAP_SIM=y
> +CONFIG_EAP_SIM=y
> 
>  # EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
> #CONFIG_EAP_PSK=y
> 
> +# EAP-pwd (secure authentication using only a password)
> +CONFIG_EAP_PWD=y
> +
>  # EAP-PAX
>  #CONFIG_EAP_PAX=y
> 
> @@ -208,6 +200,11 @@ CONFIG_EAP_LEAP=y
>  CONFIG_WPS=y
>  # Enable WSC 2.0 support
>  CONFIG_WPS2=y
> +# Enable WPS external registrar functionality #CONFIG_WPS_ER=y #
> +Disable credentials for an open network by default when acting as a WPS
> +# registrar.
> +#CONFIG_WPS_REG_DISABLE_OPEN=y
> 
>  # EAP-IKEv2
>  #CONFIG_EAP_IKEV2=y
> @@ -224,7 +221,10 @@ CONFIG_SMARTCARD=y
>  # Enable this if EAP-SIM or EAP-AKA is included  #CONFIG_PCSC=y
> 
> -# Development testingBG
> +# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
> +#CONFIG_HT_OVERRIDES=y
> +
> +# Development testing
>  #CONFIG_EAPOL_TEST=y
> 
>  # Select control interface backend for external programs, e.g, wpa_cli:
> @@ -242,6 +242,10 @@ CONFIG_CTRL_IFACE=y  # the resulting binary.
>  #CONFIG_READLINE=y
> 
> +# Include internal line edit mode in wpa_cli. This can be used as a
> +replacement # for GNU Readline to provide limited command line editing and
> history support.
> +CONFIG_WPA_CLI_EDIT=y
> +
>  # Remove debugging code that is printing out debug message to stdout.
>  # This can be used to reduce the size of the wpa_supplicant considerably  # if
> debugging code is not needed. The size reduction can be around 35% @@ -
> 295,13 +299,16 @@ CONFIG_BACKEND=file  # unix = UNIX/POSIX like systems
> (default)  # win32 = Windows systems  # none = Empty template -
> #CONFIG_OS=unix
> +CONFIG_OS=unix
> 
>  # Select event loop implementation
>  # eloop = select() loop (default)
>  # eloop_win = Windows events and WaitForMultipleObject() loop  #
> eloop_none = Empty template -#CONFIG_ELOOP=eloop
> +CONFIG_ELOOP=eloop
> +
> +# Should we use poll instead of select? Select is used by default.
> +#CONFIG_ELOOP_POLL=y
> 
>  # Select layer 2 packet implementation
>  # linux = Linux packet socket (default) @@ -310,7 +317,7 @@
> CONFIG_BACKEND=file  # winpcap = WinPcap with receive thread  # ndis =
> Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)  # none = Empty
> template -#CONFIG_L2_PACKET=linux
> +CONFIG_L2_PACKET=linux
> 
>  # PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
> CONFIG_PEERKEY=y @@ -323,18 +330,24 @@ CONFIG_PEERKEY=y
> 
>  # Select TLS implementation
>  # openssl = OpenSSL (default)
> -# gnutls = GnuTLS (needed for TLS/IA, see also CONFIG_GNUTLS_EXTRA)
> +# gnutls = GnuTLS
>  # internal = Internal TLSv1 implementation (experimental)  # none = Empty
> template  #CONFIG_TLS=openssl
> 
> -# Whether to enable TLS/IA support, which is required for EAP-TTLSv1.
> -# You need CONFIG_TLS=gnutls for this to have any effect. Please note that -#
> even though the core GnuTLS library is released under LGPL, this extra -# library
> uses GPL and as such, the terms of GPL apply to the combination -# of
> wpa_supplicant and GnuTLS if this option is enabled. BSD license may not -#
> apply for distribution of the resulting binary.
> -#CONFIG_GNUTLS_EXTRA=y
> +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS
> +(v1.1) # can be enabled to get a stronger construction of messages when
> +block ciphers # are used. It should be noted that some existing TLS
> +v1.0 -based # implementation may not be compatible with TLS v1.1
> +message (ClientHello is # sent prior to negotiating which version will
> +be used) #CONFIG_TLSV11=y
> +
> +# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS
> +(v1.2) # can be enabled to enable use of stronger crypto algorithms. It
> +should be # noted that some existing TLS v1.0 -based implementation may
> +not be compatible # with TLS v1.2 message (ClientHello is sent prior to
> +negotiating which version # will be used) #CONFIG_TLSV12=y
> 
>  # If CONFIG_TLS=internal is used, additional library and include paths are  #
> needed for LibTomMath. Alternatively, an integrated, minimal version of @@ -
> 360,14 +373,14 @@ CONFIG_PEERKEY=y
> 
>  # Add support for old DBus control interface  #
> (fi.epitest.hostap.WPASupplicant) -CONFIG_CTRL_IFACE_DBUS=y
> +#CONFIG_CTRL_IFACE_DBUS=y
> 
>  # Add support for new DBus control interface  #
> (fi.w1.hostap.wpa_supplicant1) -CONFIG_CTRL_IFACE_DBUS_NEW=y
> +#CONFIG_CTRL_IFACE_DBUS_NEW=y
> 
>  # Add introspection support for new DBus control interface -
> CONFIG_CTRL_IFACE_DBUS_INTRO=y
> +#CONFIG_CTRL_IFACE_DBUS_INTRO=y
> 
>  # Add support for loading EAP methods dynamically as shared libraries.
>  # When this option is enabled, each EAP method can be either included @@ -
> 394,7 +407,22 @@ CONFIG_CTRL_IFACE_DBUS_INTRO=y
> #CONFIG_IEEE80211R=y
> 
>  # Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) -
> CONFIG_DEBUG_FILE=y
> +#CONFIG_DEBUG_FILE=y
> +
> +# Send debug messages to syslog instead of stdout
> +#CONFIG_DEBUG_SYSLOG=y # Set syslog facility for debug messages
> +#CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
> +
> +# Add support for sending all debug messages (regardless of debug
> +verbosity) # to the Linux kernel tracing facility. This helps debug the
> +entire stack by # making it easy to record everything happening from
> +the driver up into the # same file, e.g., using trace-cmd.
> +#CONFIG_DEBUG_LINUX_TRACING=y
> +
> +# Add support for writing debug log to Android logcat instead of
> +standard # output CONFIG_ANDROID_LOG=y
> 
>  # Enable privilege separation (see README 'Privilege separation' for details)
> #CONFIG_PRIVSEP=y @@ -407,7 +435,7 @@ CONFIG_DEBUG_FILE=y  # This
> tracks use of memory allocations and other registrations and reports  # incorrect
> use with a backtrace of call (or allocation) location.
>  #CONFIG_WPA_TRACE=y
> -# For BSD, comment out these.
> +# For BSD, uncomment these.
>  #LIBS += -lexecinfo
>  #LIBS_p += -lexecinfo
>  #LIBS_c += -lexecinfo
> @@ -416,15 +444,63 @@ CONFIG_DEBUG_FILE=y  # This enables use of libbfd
> to get more detailed symbols for the backtraces  # generated by
> CONFIG_WPA_TRACE=y.
>  #CONFIG_WPA_TRACE_BFD=y
> -# For BSD, comment out these.
> +# For BSD, uncomment these.
>  #LIBS += -lbfd -liberty -lz
>  #LIBS_p += -lbfd -liberty -lz
>  #LIBS_c += -lbfd -liberty -lz
> 
> -# for p2p
> +# wpa_supplicant depends on strong random number generation being
> +available # from the operating system. os_get_random() function is used
> +to fetch random # data when needed, e.g., for key generation. On Linux
> +and BSD systems, this # works by reading /dev/urandom. It should be
> +noted that the OS entropy pool # needs to be properly initialized
> +before wpa_supplicant is started. This is # important especially on
> +embedded devices that do not have a hardware random # number generator
> +and may by default start up with minimal entropy available # for random
> number generation.
> +#
> +# As a safety net, wpa_supplicant is by default trying to internally
> +collect # additional entropy for generating random data to mix in with
> +the data fetched # from the OS. This by itself is not considered to be
> +very strong, but it may # help in cases where the system pool is not
> +initialized properly. However, it # is very strongly recommended that
> +the system pool is initialized with enough # entropy either by using
> +hardware assisted random number generator or by # storing state over device
> reboots.
> +#
> +# wpa_supplicant can be configured to maintain its own entropy store
> +over # restarts to enhance random number generation. This is not
> +perfect, but it is # much more secure than using the same sequence of
> +random numbers after every # reboot. This can be enabled with
> +-e<entropy file> command line option. The # specified file needs to be readable
> and writable by wpa_supplicant.
> +#
> +# If the os_get_random() is known to provide strong random data (e.g.,
> +on # Linux/BSD, the board in question is known to have reliable source
> +of random # data from /dev/urandom), the internal wpa_supplicant random
> +pool can be # disabled. This will save some in binary size and CPU use.
> +However, this # should only be considered for builds that are known to
> +be used on devices # that meet the requirements described above.
> +#CONFIG_NO_RANDOM_POOL=y
> +
> +# IEEE 802.11n (High Throughput) support (mainly for AP mode)
> +CONFIG_IEEE80211N=y
> +
> +# Interworking (IEEE 802.11u)
> +# This can be used to enable functionality to improve interworking with
> +# external networks (GAS/ANQP to learn more about the networks and
> +network # selection based on available credentials).
> +CONFIG_INTERWORKING=y
> +
> +# Hotspot 2.0
> +CONFIG_HS20=y
> +
> +# Disable roaming in wpa_supplicant
> +#CONFIG_NO_ROAMING=y
> +
> +# Enable P2P
>  CONFIG_P2P=y
>  CONFIG_AP=y
> 
> -# IEEE 802.11n (High Throughput) support -CONFIG_IEEE80211N=y
> +# bgscan
> +NEED_BGSCAN=y
> +CONFIG_BGSCAN_LEARN=y
> +CONFIG_BGSCAN_SIMPLE=y
> 
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant-wl18xx_r8.a6.01.bb b/meta-arago-extras/recipes-connectivity/wpa-
> supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
> similarity index 89%
> copy from meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant-wl18xx_r8.a6.01.bb
> copy to meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant-wl18xx_r8.a8.08.bb
> index f6c4f70..d9a9fde 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-
> wl18xx_r8.a6.01.bb
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplica
> +++ nt-wl18xx_r8.a8.08.bb
> @@ -10,9 +10,9 @@ LIC_FILES_CHKSUM =
> "file://../COPYING;md5=ab87f20cd7e8c0d0a6539b34d3791d0e \
> 
>  FILESEXTRAPATHS_append := "${THISDIR}/wpa-supplicant:"
> 
> -# Tag: ol_r8.a6.01
> -SRCREV = "7190ff7dbd43243290b626068ded0d61c5019050"
> -PR = "r2+gitr${SRCPV}"
> +# Tag: ol_r8.a8.08
> +SRCREV = "257ab333aad993b4be81808524bc0d939c276058"
> +PR = "r0+gitr${SRCPV}"
> 
>  # Add ti to the PV to indicate that this is a TI modify version of wpa-supplicant.
>  PV = "2.0-devel-ti"
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant.inc b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant.inc
> index 2d8970f..ef40a83 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant.inc
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplica
> +++ nt.inc
> @@ -21,6 +21,7 @@ SRC_URI = "git://github.com/TI-
> OpenLink/hostap.git;protocol=git \
>             file://defaults-sane \
>             file://wpa-supplicant.sh \
>             file://wpa_supplicant.conf \
> +           file://p2p_supplicant.conf \
>             file://wpa_supplicant.conf-sane \
>             file://99_wpa_supplicant \
>             file://wpa_supplicant.conf \ @@ -55,6 +56,7 @@ do_install () {
>  	install -d ${D}${sysconfdir}/default
>  	install -m 600 ${WORKDIR}/defaults-sane
> ${D}${sysconfdir}/default/wpa
>  	install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane
> ${D}${sysconfdir}/wpa_supplicant.conf
> +        install -m 600 ${WORKDIR}/p2p_supplicant.conf
> + ${D}${sysconfdir}/p2p_supplicant.conf
> 
>  	if grep -q ^CONFIG_CTRL_IFACE_DBUS=y .config || grep -q
> ^CONFIG_CTRL_IFACE_DBUS_NEW=y .config; then
>  		install -d ${D}/${sysconfdir}/dbus-1/system.d
> @@ -104,6 +106,7 @@ pkg_postinst_wpa-supplicant () {  do_configure () {
>  	install -m 0755 ${WORKDIR}/defconfig .config
>  	echo "CFLAGS += -I${STAGING_INCDIR}" >> .config
> +        echo "CFLAGS += -I${STAGING_INCDIR}/libnl3/" >> .config
>  	echo "LIBS += -L${STAGING_LIBDIR}" >> .config
>  	echo "LIBS_p += -L${STAGING_LIBDIR}" >> .config
>  	if [ "${@base_contains('COMBINED_FEATURES', 'madwifi', 1, 0, d)}" =
> "1" ]; then diff --git a/meta-arago-extras/recipes-connectivity/wpa-
> supplicant/wpa-supplicant/p2p_supplicant.conf b/meta-arago-extras/recipes-
> connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf
> new file mode 100755
> index 0000000..2de8730
> --- /dev/null
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplica
> +++ nt/p2p_supplicant.conf
> @@ -0,0 +1,14 @@
> +ctrl_interface=/var/run/wpa_supplicant
> +update_config=0
> +device_name=TI-SITARA-P2P
> +device_type=1-0050F204-1
> +config_methods=virtual_push_button physical_display keypad
> +p2p_go_intent=0
> +country=US
> +##p2p_pref_chan=115:36 115:40
> +driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
> +p2p_go_max_inactivity=60
> +p2p_go_ht40=1
> +p2p_multi_chan=1
> +disassoc_low_ack=1
> +concurrent_sched_scan=1
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant/wpa_supplicant.conf b/meta-arago-extras/recipes-
> connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
> index f0c993d..f144a38 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-
> supplicant/wpa_supplicant.conf
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplica
> +++ nt/wpa_supplicant.conf
> @@ -1,19 +1,4 @@
> -##### Example wpa_supplicant configuration file
> ############################### -# -# This file describes configuration
> file format and lists all available option.
> -# Please also take a look at simpler configuration examples in 'examples'
> -# subdirectory.
> -#
> -# Empty lines and lines starting with # are ignored
> -
> -# NOTE! This file may contain password information and should probably be
> made -# readable only by root user on multiuser systems.
> -
> -# Note: All file paths in this configuration file should use full (absolute, -# not
> relative to working directory) path in order to allow working directory -# to be
> changed. This can happen if wpa_supplicant is run in the background.
> -
> -# Whether to allow wpa_supplicant to update (overwrite) configuration
> +##### wpa_supplicant configuration file template #####
>  #
>  # This option can be used to allow wpa_supplicant to overwrite configuration  #
> file whenever configuration is changed (e.g., new network block is added with
> @@ -21,59 +6,8 @@  # wpa_cli/wpa_gui to be able to store the configuration
> changes permanently.
>  # Please note that overwriting configuration file will remove the comments
> from  # it.
> -#update_config=1
> -
> -# global configuration (shared by all network blocks) -# -# Parameters for the
> control interface. If this is specified, wpa_supplicant -# will open a control
> interface that is available for external programs to -# manage wpa_supplicant.
> The meaning of this string depends on which control -# interface mechanism is
> used. For all cases, the existance of this parameter -# in configuration is used to
> determine whether the control interface is -# enabled.
> -#
> -# For UNIX domain sockets (default on Linux and BSD): This is a directory that -
> # will be created for UNIX domain sockets for listening to requests from -#
> external programs (CLI/GUI, etc.) for status information and configuration.
> -# The socket file will be named based on the interface name, so multiple -#
> wpa_supplicant processes can be run at the same time if more than one -#
> interface is used.
> -# /var/run/wpa_supplicant is the recommended directory for sockets and by -#
> default, wpa_cli will use it when trying to connect with wpa_supplicant.
> -#
> -# Access control for the control interface can be configured by setting the -#
> directory to allow only members of a group to use sockets. This way, it is -#
> possible to run wpa_supplicant as root (since it needs to change network -#
> configuration and open raw sockets) and still allow GUI/CLI components to be -#
> run as non-root users. However, since the control interface can be used to -#
> change the network configuration, this access needs to be protected in many -#
> cases. By default, wpa_supplicant is configured to use gid 0 (root). If you -#
> want to allow non-root users to use the control interface, add a new group -#
> and change this value to match with that group. Add users that should have -#
> control interface access to this group. If this variable is commented out or -# not
> included in the configuration file, group will not be changed from the -# value it
> got by default when the directory or socket was created.
> -#
> -# When configuring both the directory and group, use following format:
> -# DIR=/var/run/wpa_supplicant GROUP=wheel -#
> DIR=/var/run/wpa_supplicant GROUP=0 -# (group can be either group name or
> gid) -# -# For UDP connections (default on Windows): The value will be ignored.
> This -# variable is just used to select that the control interface is to be created.
> -# The value can be set to, e.g., udp (ctrl_interface=udp) -# -# For Windows
> Named Pipe: This value can be used to set the security descriptor -# for
> controlling access to the control interface. Security descriptor can be -# set using
> Security Descriptor String Format (see http://msdn.microsoft.com/ -#
> library/default.asp?url=/library/en-us/secauthz/security/
> -# security_descriptor_string_format.asp). The descriptor string needs to be -#
> prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty
> -# DACL (which will reject all connections). See README-Windows.txt for more -
> # information about SDDL string format.
> -#
> +update_config=1
>  ctrl_interface=/var/run/wpa_supplicant
> -
>  # IEEE 802.1X/EAPOL version
>  # wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines
> # EAPOL version 2. However, there are many APs that do not handle the new
> @@ -82,14 +16,15 @@ ctrl_interface=/var/run/wpa_supplicant
>  # to 1 by default. This configuration value can be used to set it to the new  #
> version (2).
>  eapol_version=1
> -
>  # AP scanning/selection
>  # By default, wpa_supplicant requests driver to perform AP scanning and then
> # uses the scan results to select a suitable AP. Another alternative is to  # allow
> the driver to take care of AP scanning and selection and use  # wpa_supplicant
> just to process EAPOL frames based on IEEE 802.11 association  # information
> from the driver.
> -# 1: wpa_supplicant initiates scanning and AP selection
> +# 1: wpa_supplicant initiates scanning and AP selection; if no APs matching to
> +#    the currently enabled networks are found, a new network (IBSS or AP
> mode
> +#    operation) may be initialized (if configured) (default)
>  # 0: driver takes care of scanning, AP selection, and IEEE 802.11 association
>  #    parameters (e.g., WPA IE generation); this mode can also be used with
>  #    non-WPA drivers when using IEEE 802.1X mode; do not try to associate with
> @@ -102,589 +37,28 @@ eapol_version=1
>  #    the driver reports successful association; each network block should have
>  #    explicit security policy (i.e., only one option in the lists) for
>  #    key_mgmt, pairwise, group, proto variables
> +# When using IBSS or AP mode, ap_scan=2 mode can force the new network
> +to be # created immediately regardless of scan results. ap_scan=1 mode
> +will first try # to scan for existing networks and only if no matches
> +with the enabled # networks are found, a new IBSS or AP mode network is
> created.
>  ap_scan=1
> -
>  # EAP fast re-authentication
>  # By default, fast re-authentication is enabled for all EAP methods that  #
> support it. This variable can be used to disable fast re-authentication.
>  # Normally, there is no need to disable this.
>  fast_reauth=1
> -
> -# OpenSSL Engine support
> -# These options can be used to load OpenSSL engines.
> -# The two engines that are supported currently are shown below:
> -# They are both from the opensc project (http://www.opensc.org/) -# By
> default no engines are loaded.
> -# make the opensc engine available
> -#opensc_engine_path=/usr/lib/opensc/engine_opensc.so
> -# make the pkcs11 engine available
> -#pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
> -# configure the path to the pkcs11 module required by the pkcs11 engine -
> #pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so
> -
> -# Dynamic EAP methods
> -# If EAP methods were built dynamically as shared object files, they need to be -
> # loaded here before being used in the network blocks. By default, EAP methods
> -# are included statically in the build, so these lines are not needed -
> #load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so
> -#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so
> -
> -# Driver interface parameters
> -# This field can be used to configure arbitrary driver interace parameters. The -
> # format is specific to the selected driver interface. This field is not used -# in
> most cases.
> -#driver_param="field=value"
> -
> -# Maximum lifetime for PMKSA in seconds; default 43200
> -#dot11RSNAConfigPMKLifetime=43200
> -# Threshold for reauthentication (percentage of PMK lifetime); default 70
> -#dot11RSNAConfigPMKReauthThreshold=70
> -# Timeout for security association negotiation in seconds; default 60
> -#dot11RSNAConfigSATimeout=60
> -
> -# network block
> -#
> -# Each network (usually AP's sharing the same SSID) is configured as a separate
> -# block in this configuration file. The network blocks are in preference order -#
> (the first match is used).
> -#
> -# network block fields:
> -#
> -# disabled:
> -#	0 = this network can be used (default)
> -#	1 = this network block is disabled (can be enabled through ctrl_iface,
> -#	    e.g., with wpa_cli or wpa_gui)
> -#
> -# id_str: Network identifier string for external scripts. This value is passed
> -#	to external action script through wpa_cli as WPA_ID_STR environment
> -#	variable to make it easier to do network specific configuration.
> -#
> -# ssid: SSID (mandatory); either as an ASCII string with double quotation or
> -#	as hex string; network name
> -#
> -# scan_ssid:
> -#	0 = do not scan this SSID with specific Probe Request frames (default)
> -#	1 = scan with SSID-specific Probe Request frames (this can be used to
> -#	    find APs that do not accept broadcast SSID or use multiple SSIDs;
> -#	    this will add latency to scanning, so enable this only when needed)
> -#
> -# bssid: BSSID (optional); if set, this network block is used only when
> -#	associating with the AP using the configured BSSID
> -#
> -# priority: priority group (integer)
> -# By default, all networks will get same priority group (0). If some of the -#
> networks are more desirable, this field can be used to change the order in -#
> which wpa_supplicant goes through the networks when selecting a BSS. The -#
> priority groups will be iterated in decreasing priority (i.e., the larger the -#
> priority value, the sooner the network is matched against the scan results).
> -# Within each priority group, networks will be selected based on security -#
> policy, signal strength, etc.
> -# Please note that AP scanning with scan_ssid=1 and ap_scan=2 mode are not -
> # using this priority to select the order for scanning. Instead, they try the -#
> networks in the order that used in the configuration file.
> -#
> -# mode: IEEE 802.11 operation mode
> -# 0 = infrastructure (Managed) mode, i.e., associate with an AP (default) -# 1 =
> IBSS (ad-hoc, peer-to-peer) -# Note: IBSS can only be used with key_mgmt
> NONE (plaintext and static WEP) -# and key_mgmt=WPA-NONE (fixed group key
> TKIP/CCMP). In addition, ap_scan has -# to be set to 2 for IBSS. WPA-None
> requires following network block options:
> -# proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP (or CCMP,
> but not -# both), and psk must also be set.
> -#
> -# proto: list of accepted protocols
> -# WPA = WPA/IEEE 802.11i/D3.0
> -# RSN = WPA2/IEEE 802.11i (also WPA2 can be used as an alias for RSN) -# If
> not set, this defaults to: WPA RSN -# -# key_mgmt: list of accepted
> authenticated key management protocols -# WPA-PSK = WPA pre-shared key
> (this requires 'psk' field) -# WPA-EAP = WPA using EAP authentication (this can
> use an external
> -#	program, e.g., Xsupplicant, for IEEE 802.1X EAP Authentication
> -# IEEE8021X = IEEE 802.1X using EAP authentication and (optionally)
> dynamically
> -#	generated WEP keys
> -# NONE = WPA is not used; plaintext or static WEP could be used -# If not set,
> this defaults to: WPA-PSK WPA-EAP -# -# auth_alg: list of allowed IEEE 802.11
> authentication algorithms -# OPEN = Open System authentication (required for
> WPA/WPA2) -# SHARED = Shared Key authentication (requires static WEP keys)
> -# LEAP = LEAP/Network EAP (only used with LEAP) -# If not set, automatic
> selection is used (Open System with LEAP enabled if -# LEAP is allowed as one of
> the EAP methods).
> -#
> -# pairwise: list of accepted pairwise (unicast) ciphers for WPA -# CCMP = AES in
> Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0] -# TKIP = Temporal
> Key Integrity Protocol [IEEE 802.11i/D7.0] -# NONE = Use only Group Keys
> (deprecated, should not be included if APs support
> -#	pairwise keys)
> -# If not set, this defaults to: CCMP TKIP -# -# group: list of accepted group
> (broadcast/multicast) ciphers for WPA -# CCMP = AES in Counter mode with
> CBC-MAC [RFC 3610, IEEE 802.11i/D7.0] -# TKIP = Temporal Key Integrity
> Protocol [IEEE 802.11i/D7.0] -# WEP104 = WEP (Wired Equivalent Privacy) with
> 104-bit key -# WEP40 = WEP (Wired Equivalent Privacy) with 40-bit key [IEEE
> 802.11] -# If not set, this defaults to: CCMP TKIP WEP104 WEP40 -# -# psk:
> WPA preshared key; 256-bit pre-shared key -# The key used in WPA-PSK mode
> can be entered either as 64 hex-digits, i.e., -# 32 bytes or as an ASCII passphrase
> (in which case, the real PSK will be -# generated using the passphrase and SSID).
> ASCII passphrase must be between -# 8 and 63 characters (inclusive).
> -# This field is not needed, if WPA-EAP is used.
> -# Note: Separate tool, wpa_passphrase, can be used to generate 256-bit keys -
> # from ASCII passphrase. This process uses lot of CPU and wpa_supplicant -#
> startup and reconfiguration time can be optimized by generating the PSK only -#
> only when the passphrase or SSID has actually changed.
> -#
> -# eapol_flags: IEEE 802.1X/EAPOL options (bit field) -# Dynamic WEP key
> required for non-WPA mode -# bit0 (1): require dynamically generated unicast
> WEP key -# bit1 (2): require dynamically generated broadcast WEP key
> -# 	(3 = require both keys; default)
> -# Note: When using wired authentication, eapol_flags must be set to 0 for the -
> # authentication to be completed successfully.
> -#
> -# proactive_key_caching:
> -# Enable/disable opportunistic PMKSA caching for WPA2.
> -# 0 = disabled (default)
> -# 1 = enabled
> -#
> -# wep_key0..3: Static WEP key (ASCII in double quotation, e.g. "abcde" or -#
> hex without quotation, e.g., 0102030405) -# wep_tx_keyidx: Default WEP key
> index (TX) (0..3) -# -# peerkey: Whether PeerKey negotiation for direct links
> (IEEE 802.11e DLS) is -# allowed. This is only used with RSN/WPA2.
> -# 0 = disabled (default)
> -# 1 = enabled
> -#peerkey=1
> -#
> -# Following fields are only used with internal EAP implementation.
> -# eap: space-separated list of accepted EAP methods
> -#	MD5 = EAP-MD5 (unsecure and does not generate keying material ->
> -#			cannot be used with WPA; to be used as a Phase 2
> method
> -#			with EAP-PEAP or EAP-TTLS)
> -#       MSCHAPV2 = EAP-MSCHAPv2 (cannot be used separately with WPA; to be
> used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#       OTP = EAP-OTP (cannot be used separately with WPA; to be used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#       GTC = EAP-GTC (cannot be used separately with WPA; to be used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#	TLS = EAP-TLS (client and server certificate)
> -#	PEAP = EAP-PEAP (with tunnelled EAP authentication)
> -#	TTLS = EAP-TTLS (with tunnelled EAP or
> PAP/CHAP/MSCHAP/MSCHAPV2
> -#			 authentication)
> -#	If not set, all compiled in methods are allowed.
> -#
> -# identity: Identity string for EAP
> -# anonymous_identity: Anonymous identity string for EAP (to be used as the
> -#	unencrypted identity with EAP types that support different tunnelled
> -#	identity, e.g., EAP-TTLS)
> -# password: Password string for EAP
> -# ca_cert: File path to CA certificate file (PEM/DER). This file can have one
> -#	or more trusted CA certificates. If ca_cert and ca_path are not
> -#	included, server certificate will not be verified. This is insecure and
> -#	a trusted CA certificate should always be configured when using
> -#	EAP-TLS/TTLS/PEAP. Full path should be used since working directory
> may
> -#	change when wpa_supplicant is run in the background.
> -#	On Windows, trusted CA certificates can be loaded from the system
> -#	certificate store by setting this to cert_store://<name>, e.g.,
> -#	ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT".
> -#	Note that when running wpa_supplicant as an application, the user
> -#	certificate store (My user account) is used, whereas computer store
> -#	(Computer account) is used when running wpasvc as a service.
> -# ca_path: Directory path for CA certificate files (PEM). This path may
> -#	contain multiple CA certificates in OpenSSL format. Common use for this
> -#	is to point to system trusted CA list which is often installed into
> -#	directory like /etc/ssl/certs. If configured, these certificates are
> -#	added to the list of trusted CAs. ca_cert may also be included in that
> -#	case, but it is not required.
> -# client_cert: File path to client certificate file (PEM/DER)
> -#	Full path should be used since working directory may change when
> -#	wpa_supplicant is run in the background.
> -#	Alternatively, a named configuration blob can be used by setting this
> -#	to blob://<blob name>.
> -# private_key: File path to client private key file (PEM/DER/PFX)
> -#	When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be
> -#	commented out. Both the private key and certificate will be read from
> -#	the PKCS#12 file in this case. Full path should be used since working
> -#	directory may change when wpa_supplicant is run in the background.
> -#	Windows certificate store can be used by leaving client_cert out and
> -#	configuring private_key in one of the following formats:
> -#	cert://substring_to_match
> -#	hash://certificate_thumbprint_in_hex
> -#	for example: private_key="hash://63093aa9c47f56ae88334c7b65a4"
> -#	Note that when running wpa_supplicant as an application, the user
> -#	certificate store (My user account) is used, whereas computer store
> -#	(Computer account) is used when running wpasvc as a service.
> -#	Alternatively, a named configuration blob can be used by setting this
> -#	to blob://<blob name>.
> -# private_key_passwd: Password for private key file (if left out, this will be
> -#	asked through control interface)
> -# dh_file: File path to DH/DSA parameters file (in PEM format)
> -#	This is an optional configuration file for setting parameters for an
> -#	ephemeral DH key exchange. In most cases, the default RSA
> -#	authentication does not use this configuration. However, it is possible
> -#	setup RSA to use ephemeral DH key exchange. In addition, ciphers with
> -#	DSA keys always use ephemeral DH keys. This can be used to achieve
> -#	forward secrecy. If the file is in DSA parameters format, it will be
> -#	automatically converted into DH params.
> -# subject_match: Substring to be matched against the subject of the
> -#	authentication server certificate. If this string is set, the server
> -#	sertificate is only accepted if it contains this string in the subject.
> -#	The subject string is in following format:
> -#	/C=US/ST=CA/L=San Francisco/CN=Test
> AS/emailAddress=as@example.com
> -# altsubject_match: Semicolon separated string of entries to be matched
> against
> -#	the alternative subject name of the authentication server certificate.
> -#	If this string is set, the server sertificate is only accepted if it
> -#	contains one of the entries in an alternative subject name extension.
> -#	altSubjectName string is in following format: TYPE:VALUE
> -#	Example: EMAIL:server@example.com
> -#	Example: DNS:server.example.com;DNS:server2.example.com
> -#	Following types are supported: EMAIL, DNS, URI
> -# phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters
> -#	(string with field-value pairs, e.g., "peapver=0" or
> -#	"peapver=1 peaplabel=1")
> -#	'peapver' can be used to force which PEAP version (0 or 1) is used.
> -#	'peaplabel=1' can be used to force new label, "client PEAP encryption",
> -#	to be used during key derivation when PEAPv1 or newer. Most existing
> -#	PEAPv1 implementation seem to be using the old label, "client EAP
> -#	encryption", and wpa_supplicant is now using that as the default value.
> -#	Some servers, e.g., Radiator, may require peaplabel=1 configuration to
> -#	interoperate with PEAPv1; see eap_testing.txt for more details.
> -#	'peap_outer_success=0' can be used to terminate PEAP authentication
> on
> -#	tunneled EAP-Success. This is required with some RADIUS servers that
> -#	implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g.,
> -#	Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode)
> -#	include_tls_length=1 can be used to force wpa_supplicant to include
> -#	TLS Message Length field in all TLS messages even if they are not
> -#	fragmented.
> -#	sim_min_num_chal=3 can be used to configure EAP-SIM to require
> three
> -#	challenges (by default, it accepts 2 or 3)
> -# phase2: Phase2 (inner authentication with TLS tunnel) parameters
> -#	(string with field-value pairs, e.g., "auth=MSCHAPV2" for EAP-PEAP or
> -#	"autheap=MSCHAPV2 autheap=MD5" for EAP-TTLS)
> -# Following certificate/private key fields are used in inner Phase2 -#
> authentication when using EAP-TTLS or EAP-PEAP.
> -# ca_cert2: File path to CA certificate file. This file can have one or more
> -#	trusted CA certificates. If ca_cert2 and ca_path2 are not included,
> -#	server certificate will not be verified. This is insecure and a trusted
> -#	CA certificate should always be configured.
> -# ca_path2: Directory path for CA certificate files (PEM) -# client_cert2: File
> path to client certificate file -# private_key2: File path to client private key file -#
> private_key2_passwd: Password for private key file -# dh_file2: File path to
> DH/DSA parameters file (in PEM format) -# subject_match2: Substring to be
> matched against the subject of the
> -#	authentication server certificate.
> -# altsubject_match2: Substring to be matched against the alternative subject
> -#	name of the authentication server certificate.
> -#
> -# fragment_size: Maximum EAP fragment size in bytes (default 1398).
> -#	This value limits the fragment size for EAP methods that support
> -#	fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set
> -#	small enough to make the EAP messages fit in MTU of the network
> -#	interface used for EAPOL. The default value is suitable for most
> -#	cases.
> -#
> -# EAP-PSK variables:
> -# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format -# nai:
> user NAI -# -# EAP-PAX variables:
> -# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format -# -#
> EAP-SAKE variables:
> -# eappsk: 32-byte (256-bit, 64 hex digits) pre-shared key in hex format
> -#	(this is concatenation of Root-Secret-A and Root-Secret-B)
> -# nai: user NAI (PEERID)
> -#
> -# EAP-GPSK variables:
> -# eappsk: Pre-shared key in hex format (at least 128 bits, i.e., 32 hex digits) -#
> nai: user NAI (ID_Client) -# -# EAP-FAST variables:
> -# pac_file: File path for the PAC entries. wpa_supplicant will need to be able
> -#	to create this file and write updates to it when PAC is being
> -#	provisioned or refreshed. Full path to the file should be used since
> -#	working directory may change when wpa_supplicant is run in the
> -#	background. Alternatively, a named configuration blob can be used by
> -#	setting this to blob://<blob name>
> -# phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST
> -#	credentials (PAC)
> -#
> -# wpa_supplicant supports number of "EAP workarounds" to work around -#
> interoperability issues with incorrectly behaving authentication servers.
> -# These are enabled by default because some of the issues are present in large -
> # number of authentication servers. Strict EAP conformance mode can be -#
> configured by disabling workarounds with eap_workaround=0.
> -
> -# Example blocks:
> -
> -# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers -
> network={
> -	ssid="simple"
> -	psk="very secret passphrase"
> -	priority=5
> -}
> -
> -# Same as previous, but request SSID-specific scanning (for APs that reject -#
> broadcast SSID) -network={
> -	ssid="second ssid"
> -	scan_ssid=1
> -	psk="very secret passphrase"
> -	priority=2
> -}
> -
> -# Only WPA-PSK is used. Any valid cipher combination is accepted.
> -network={
> -	ssid="example"
> -	proto=WPA
> -	key_mgmt=WPA-PSK
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP WEP104 WEP40
> -
> 	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb
> 0106c72ac7bb
> -	priority=2
> -}
> -
> -# Only WPA-EAP is used. Both CCMP and TKIP is accepted. An AP that used
> WEP104 -# or WEP40 as the group cipher will not be accepted.
> -network={
> -	ssid="example"
> -	proto=RSN
> -	key_mgmt=WPA-EAP
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP
> -	eap=TLS
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	priority=1
> -}
> -
> -# EAP-PEAP/MSCHAPv2 configuration for RADIUS servers that use the new
> peaplabel -# (e.g., Radiator) -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=PEAP
> -	identity="user@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	phase1="peaplabel=1"
> -	phase2="auth=MSCHAPV2"
> -	priority=10
> -}
> -
> -# EAP-TTLS/EAP-MD5-Challenge configuration with anonymous identity for the
> -# unencrypted use. Real identity is sent only within an encrypted TLS tunnel.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	priority=2
> -}
> -
> -# EAP-TTLS/MSCHAPv2 configuration with anonymous identity for the
> unencrypted -# use. Real identity is sent only within an encrypted TLS tunnel.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	phase2="auth=MSCHAPV2"
> -}
> -
> -# WPA-EAP, EAP-TTLS with different CA certificate used for outer and inner -#
> authentication.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	# Phase1 / outer authentication
> -	anonymous_identity="anonymous@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	# Phase 2 / inner authentication
> -	phase2="autheap=TLS"
> -	ca_cert2="/etc/cert/ca2.pem"
> -	client_cert2="/etc/cer/user.pem"
> -	private_key2="/etc/cer/user.prv"
> -	private_key2_passwd="password"
> -	priority=2
> -}
> -
> -# Both WPA-PSK and WPA-EAP is accepted. Only CCMP is accepted as pairwise
> and -# group cipher.
> -network={
> -	ssid="example"
> -	bssid=00:11:22:33:44:55
> -	proto=WPA RSN
> -	key_mgmt=WPA-PSK WPA-EAP
> -	pairwise=CCMP
> -	group=CCMP
> -
> 	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb
> 0106c72ac7bb
> -}
> -
> -# Special characters in SSID, so use hex string. Default to WPA-PSK, WPA-EAP -
> # and all valid ciphers.
> -network={
> -	ssid=00010203
> -
> 	psk=000102030405060708090a0b0c0d0e0f10111213141516171819
> 1a1b1c1d1e1f
> -}
> -
> -
> -# IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA)
> using -# EAP-TLS for authentication and key generation; require both unicast
> and -# broadcast WEP keys.
> -network={
> -	ssid="1x-test"
> -	key_mgmt=IEEE8021X
> -	eap=TLS
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	eapol_flags=3
> -}
> -
> -
> -# LEAP with dynamic WEP keys
> -network={
> -	ssid="leap-example"
> -	key_mgmt=IEEE8021X
> -	eap=LEAP
> -	identity="user"
> -	password="foobar"
> -}
> -
> -# Plaintext connection (no WPA, no IEEE 802.1X) -network={
> -	ssid="plaintext-test"
> -	key_mgmt=NONE
> -}
> -
> -
> -# Shared WEP key connection (no WPA, no IEEE 802.1X) -network={
> -	ssid="static-wep-test"
> -	key_mgmt=NONE
> -	wep_key0="abcde"
> -	wep_key1=0102030405
> -	wep_key2="1234567890123"
> -	wep_tx_keyidx=0
> -	priority=5
> -}
> -
> -
> -# Shared WEP key connection (no WPA, no IEEE 802.1X) using Shared Key -#
> IEEE 802.11 authentication -network={
> -	ssid="static-wep-test2"
> -	key_mgmt=NONE
> -	wep_key0="abcde"
> -	wep_key1=0102030405
> -	wep_key2="1234567890123"
> -	wep_tx_keyidx=0
> -	priority=5
> -	auth_alg=SHARED
> -}
> -
> -
> -# IBSS/ad-hoc network with WPA-None/TKIP.
> -network={
> -	ssid="test adhoc"
> -	mode=1
> -	proto=WPA
> -	key_mgmt=WPA-NONE
> -	pairwise=NONE
> -	group=TKIP
> -	psk="secret passphrase"
> -}
> -
> -
> -# Catch all example that allows more or less all configuration modes -network={
> -	ssid="example"
> -	scan_ssid=1
> -	key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP WEP104 WEP40
> -	psk="very secret passphrase"
> -	eap=TTLS PEAP TLS
> -	identity="user@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	phase1="peaplabel=0"
> -}
> -
> -# Example of EAP-TLS with smartcard (openssl engine) -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TLS
> -	proto=RSN
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -
> -	engine=1
> -
> -	# The engine configured here must be available. Look at
> -	# OpenSSL engine support in the global section.
> -	# The key available through the engine must be the private key
> -	# matching the client certificate configured above.
> -
> -	# use the opensc engine
> -	#engine_id="opensc"
> -	#key_id="45"
> -
> -	# use the pkcs11 engine
> -	engine_id="pkcs11"
> -	key_id="id_45"
> -
> -	# Optional PIN configuration; this can be left out and PIN will be
> -	# asked through the control interface
> -	pin="1234"
> -}
> -
> -# Example configuration showing how to use an inlined blob as a CA certificate -
> # data instead of using external file -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="blob://exampleblob"
> -	priority=20
> -}
> -
> -blob-base64-exampleblob={
> -SGVsbG8gV29ybGQhCg==
> -}
> -
> -
> -# Wildcard match for SSID (plaintext APs only). This example select any -# open
> AP regardless of its SSID.
> -network={
> -	key_mgmt=NONE
> -}
> +device_name=Blaze
> +manufacturer=TI
> +model_name=Wilink
> +model_number=wl18xx
> +serial_number=12345
> +driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1 #
> +Timeout in seconds to detect STA inactivity (default: 300 seconds) # #
> +This timeout value is used in P2P GO mode to clean up # inactive
> +stations.
> +p2p_go_max_inactivity=60
> +p2p_go_ht40=1
> +p2p_multi_chan=1
> +disassoc_low_ack=1
> +concurrent_sched_scan=1
> --
> 1.7.9
> 
> _______________________________________________
> meta-arago mailing list
> meta-arago@arago-project.org
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version.
  2013-11-28 11:32 [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version Yaniv Mahani
  2013-11-30 17:28 ` Cooper Jr., Franklin
@ 2013-12-04  7:05 ` Denys Dmytriyenko
  1 sibling, 0 replies; 3+ messages in thread
From: Denys Dmytriyenko @ 2013-12-04  7:05 UTC (permalink / raw)
  To: Yaniv Mahani; +Cc: meta-arago

Ok, while I was reviewing your patches, I was thinking about some general 
comments and recommendations for the entire patchset...

There should have been 8 patches, not 14 - since in 6 instances you are 
updating the recipe by copying it from the old version and removing it in the 
next patch. So, those 6 removal patches are rather wasteful. Instead of doing 
copy->patch->remove, you should do rename->patch. The changes in the patch 
will be pretty much the same, but you won't need separate patches for removing 
old versions.

Anyway, it should be easy to fix from a tree where you have these 14 patches 
commited at the end (or just applied):

$ git rebase -i HEAD~14

* in the provided list of commits, replace "pick" with "squash" for those 
lines where you remove old versions (6 of those), save and exit

* git-rebase will then open an editor with combined commit messages for each 
squashed commit - edit by simply dropping the second part

* by the end of rebase, you should have 8 commits, which you can convert into 
emailable patches:

$ git format-patch -M -8

* the -M option above tells git to detect renames (similar to -C for copies)

* send the above 8 patches back to the list with a single git-send-email 
command with --no-chain-reply-to option, if you don't have it in .gitconfig

$ git send-email --to="meta-arago@arago-project.org" --no-chain-reply-to *.patch

That should make your patches more manageable, as there will be less of them 
and they will stay in a single thread, instead of 14 of them now...

Please see below for comments on this particular patch.


On Thu, Nov 28, 2013 at 01:32:26PM +0200, Yaniv Mahani wrote:
> From: Yaniv Machani <yanivma@ti.com>
> 
> - Build wpa-supplicant from TI_Openlink ol_r8.a8.08
> - Add missing includes for building with libnl3.
> - Adjusted configuration files, and added p2p conf.
> 
> Signed-off-by: Yaniv Machani <yanivma@ti.com>
> ---
>  .../wpa-supplicant/wpa-supplicant-wl18xx/defconfig |  164 ++++--
>  ....a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} |    6 +-
>  .../wpa-supplicant/wpa-supplicant.inc              |    3 +
>  .../wpa-supplicant/p2p_supplicant.conf             |   14 +
>  .../wpa-supplicant/wpa_supplicant.conf             |  674 +-------------------
>  5 files changed, 164 insertions(+), 697 deletions(-)
>  copy meta-arago-extras/recipes-connectivity/wpa-supplicant/{wpa-supplicant-wl18xx_r8.a6.01.bb => wpa-supplicant-wl18xx_r8.a8.08.bb} (89%)
>  create mode 100755 meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf

[snip defconfig, as I trust you know what you are doing...]


> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
> similarity index 89%
> copy from meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb
> copy to meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
> index f6c4f70..d9a9fde 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a6.01.bb
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant-wl18xx_r8.a8.08.bb
> @@ -10,9 +10,9 @@ LIC_FILES_CHKSUM = "file://../COPYING;md5=ab87f20cd7e8c0d0a6539b34d3791d0e \
>  
>  FILESEXTRAPATHS_append := "${THISDIR}/wpa-supplicant:"
>  
> -# Tag: ol_r8.a6.01
> -SRCREV = "7190ff7dbd43243290b626068ded0d61c5019050"
> -PR = "r2+gitr${SRCPV}"
> +# Tag: ol_r8.a8.08
> +SRCREV = "257ab333aad993b4be81808524bc0d939c276058"
> +PR = "r0+gitr${SRCPV}"

Well, it wasn't correct in the original version of the recipe, but it includes 
the coomon wpa-supplicant.inc file which already sets PR. Other wpa-supplicant 
recipes for WiLink6 use PR_append here, so WiLink8 recipe should too.


>  # Add ti to the PV to indicate that this is a TI modify version of wpa-supplicant.
>  PV = "2.0-devel-ti"
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc
> index 2d8970f..ef40a83 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc

Please note - this is a common file for WiLink6 and WiLink8 recipes. Are you 
sure the changes below won't break older versions?


> @@ -21,6 +21,7 @@ SRC_URI = "git://github.com/TI-OpenLink/hostap.git;protocol=git \
>             file://defaults-sane \
>             file://wpa-supplicant.sh \
>             file://wpa_supplicant.conf \
> +           file://p2p_supplicant.conf \
>             file://wpa_supplicant.conf-sane \
>             file://99_wpa_supplicant \
>             file://wpa_supplicant.conf \
> @@ -55,6 +56,7 @@ do_install () {
>  	install -d ${D}${sysconfdir}/default
>  	install -m 600 ${WORKDIR}/defaults-sane ${D}${sysconfdir}/default/wpa
>  	install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
> +        install -m 600 ${WORKDIR}/p2p_supplicant.conf ${D}${sysconfdir}/p2p_supplicant.conf

Bad indentation - above lines use tabs and you add 8-space line.

>  
>  	if grep -q ^CONFIG_CTRL_IFACE_DBUS=y .config || grep -q ^CONFIG_CTRL_IFACE_DBUS_NEW=y .config; then
>  		install -d ${D}/${sysconfdir}/dbus-1/system.d
> @@ -104,6 +106,7 @@ pkg_postinst_wpa-supplicant () {
>  do_configure () {
>  	install -m 0755 ${WORKDIR}/defconfig .config
>  	echo "CFLAGS += -I${STAGING_INCDIR}" >> .config
> +        echo "CFLAGS += -I${STAGING_INCDIR}/libnl3/" >> .config

Same indentation problem here.


>  	echo "LIBS += -L${STAGING_LIBDIR}" >> .config
>  	echo "LIBS_p += -L${STAGING_LIBDIR}" >> .config
>  	if [ "${@base_contains('COMBINED_FEATURES', 'madwifi', 1, 0, d)}" = "1" ]; then
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf
> new file mode 100755
> index 0000000..2de8730
> --- /dev/null
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/p2p_supplicant.conf
> @@ -0,0 +1,14 @@
> +ctrl_interface=/var/run/wpa_supplicant
> +update_config=0
> +device_name=TI-SITARA-P2P
> +device_type=1-0050F204-1
> +config_methods=virtual_push_button physical_display keypad
> +p2p_go_intent=0
> +country=US
> +##p2p_pref_chan=115:36 115:40
> +driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
> +p2p_go_max_inactivity=60
> +p2p_go_ht40=1
> +p2p_multi_chan=1
> +disassoc_low_ack=1
> +concurrent_sched_scan=1
> diff --git a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
> index f0c993d..f144a38 100644
> --- a/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf
> +++ b/meta-arago-extras/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf

Again, wpa_supplicant.conf happens to be a common file shared between WiLink6 
and WiLink8. Maybe it should be split to have separate versions of the config 
for WL6/WL8?


> @@ -1,19 +1,4 @@
> -##### Example wpa_supplicant configuration file ###############################
> -#
> -# This file describes configuration file format and lists all available option.
> -# Please also take a look at simpler configuration examples in 'examples'
> -# subdirectory.
> -#
> -# Empty lines and lines starting with # are ignored
> -
> -# NOTE! This file may contain password information and should probably be made
> -# readable only by root user on multiuser systems.
> -
> -# Note: All file paths in this configuration file should use full (absolute,
> -# not relative to working directory) path in order to allow working directory
> -# to be changed. This can happen if wpa_supplicant is run in the background.
> -
> -# Whether to allow wpa_supplicant to update (overwrite) configuration
> +##### wpa_supplicant configuration file template #####
>  #
>  # This option can be used to allow wpa_supplicant to overwrite configuration
>  # file whenever configuration is changed (e.g., new network block is added with
> @@ -21,59 +6,8 @@
>  # wpa_cli/wpa_gui to be able to store the configuration changes permanently.
>  # Please note that overwriting configuration file will remove the comments from
>  # it.
> -#update_config=1
> -
> -# global configuration (shared by all network blocks)
> -#
> -# Parameters for the control interface. If this is specified, wpa_supplicant
> -# will open a control interface that is available for external programs to
> -# manage wpa_supplicant. The meaning of this string depends on which control
> -# interface mechanism is used. For all cases, the existance of this parameter
> -# in configuration is used to determine whether the control interface is
> -# enabled.
> -#
> -# For UNIX domain sockets (default on Linux and BSD): This is a directory that
> -# will be created for UNIX domain sockets for listening to requests from
> -# external programs (CLI/GUI, etc.) for status information and configuration.
> -# The socket file will be named based on the interface name, so multiple
> -# wpa_supplicant processes can be run at the same time if more than one
> -# interface is used.
> -# /var/run/wpa_supplicant is the recommended directory for sockets and by
> -# default, wpa_cli will use it when trying to connect with wpa_supplicant.
> -#
> -# Access control for the control interface can be configured by setting the
> -# directory to allow only members of a group to use sockets. This way, it is
> -# possible to run wpa_supplicant as root (since it needs to change network
> -# configuration and open raw sockets) and still allow GUI/CLI components to be
> -# run as non-root users. However, since the control interface can be used to
> -# change the network configuration, this access needs to be protected in many
> -# cases. By default, wpa_supplicant is configured to use gid 0 (root). If you
> -# want to allow non-root users to use the control interface, add a new group
> -# and change this value to match with that group. Add users that should have
> -# control interface access to this group. If this variable is commented out or
> -# not included in the configuration file, group will not be changed from the
> -# value it got by default when the directory or socket was created.
> -#
> -# When configuring both the directory and group, use following format:
> -# DIR=/var/run/wpa_supplicant GROUP=wheel
> -# DIR=/var/run/wpa_supplicant GROUP=0
> -# (group can be either group name or gid)
> -#
> -# For UDP connections (default on Windows): The value will be ignored. This
> -# variable is just used to select that the control interface is to be created.
> -# The value can be set to, e.g., udp (ctrl_interface=udp)
> -#
> -# For Windows Named Pipe: This value can be used to set the security descriptor
> -# for controlling access to the control interface. Security descriptor can be
> -# set using Security Descriptor String Format (see http://msdn.microsoft.com/
> -# library/default.asp?url=/library/en-us/secauthz/security/
> -# security_descriptor_string_format.asp). The descriptor string needs to be
> -# prefixed with SDDL=. For example, ctrl_interface=SDDL=D: would set an empty
> -# DACL (which will reject all connections). See README-Windows.txt for more
> -# information about SDDL string format.
> -#
> +update_config=1
>  ctrl_interface=/var/run/wpa_supplicant
> -
>  # IEEE 802.1X/EAPOL version
>  # wpa_supplicant is implemented based on IEEE Std 802.1X-2004 which defines
>  # EAPOL version 2. However, there are many APs that do not handle the new
> @@ -82,14 +16,15 @@ ctrl_interface=/var/run/wpa_supplicant
>  # to 1 by default. This configuration value can be used to set it to the new
>  # version (2).
>  eapol_version=1
> -
>  # AP scanning/selection
>  # By default, wpa_supplicant requests driver to perform AP scanning and then
>  # uses the scan results to select a suitable AP. Another alternative is to
>  # allow the driver to take care of AP scanning and selection and use
>  # wpa_supplicant just to process EAPOL frames based on IEEE 802.11 association
>  # information from the driver.
> -# 1: wpa_supplicant initiates scanning and AP selection
> +# 1: wpa_supplicant initiates scanning and AP selection; if no APs matching to
> +#    the currently enabled networks are found, a new network (IBSS or AP mode
> +#    operation) may be initialized (if configured) (default)
>  # 0: driver takes care of scanning, AP selection, and IEEE 802.11 association
>  #    parameters (e.g., WPA IE generation); this mode can also be used with
>  #    non-WPA drivers when using IEEE 802.1X mode; do not try to associate with
> @@ -102,589 +37,28 @@ eapol_version=1
>  #    the driver reports successful association; each network block should have
>  #    explicit security policy (i.e., only one option in the lists) for
>  #    key_mgmt, pairwise, group, proto variables
> +# When using IBSS or AP mode, ap_scan=2 mode can force the new network to be
> +# created immediately regardless of scan results. ap_scan=1 mode will first try
> +# to scan for existing networks and only if no matches with the enabled
> +# networks are found, a new IBSS or AP mode network is created.
>  ap_scan=1
> -
>  # EAP fast re-authentication
>  # By default, fast re-authentication is enabled for all EAP methods that
>  # support it. This variable can be used to disable fast re-authentication.
>  # Normally, there is no need to disable this.
>  fast_reauth=1
> -
> -# OpenSSL Engine support
> -# These options can be used to load OpenSSL engines.
> -# The two engines that are supported currently are shown below:
> -# They are both from the opensc project (http://www.opensc.org/)
> -# By default no engines are loaded.
> -# make the opensc engine available
> -#opensc_engine_path=/usr/lib/opensc/engine_opensc.so
> -# make the pkcs11 engine available
> -#pkcs11_engine_path=/usr/lib/opensc/engine_pkcs11.so
> -# configure the path to the pkcs11 module required by the pkcs11 engine
> -#pkcs11_module_path=/usr/lib/pkcs11/opensc-pkcs11.so
> -
> -# Dynamic EAP methods
> -# If EAP methods were built dynamically as shared object files, they need to be
> -# loaded here before being used in the network blocks. By default, EAP methods
> -# are included statically in the build, so these lines are not needed
> -#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_tls.so
> -#load_dynamic_eap=/usr/lib/wpa_supplicant/eap_md5.so
> -
> -# Driver interface parameters
> -# This field can be used to configure arbitrary driver interace parameters. The
> -# format is specific to the selected driver interface. This field is not used
> -# in most cases.
> -#driver_param="field=value"
> -
> -# Maximum lifetime for PMKSA in seconds; default 43200
> -#dot11RSNAConfigPMKLifetime=43200
> -# Threshold for reauthentication (percentage of PMK lifetime); default 70
> -#dot11RSNAConfigPMKReauthThreshold=70
> -# Timeout for security association negotiation in seconds; default 60
> -#dot11RSNAConfigSATimeout=60
> -
> -# network block
> -#
> -# Each network (usually AP's sharing the same SSID) is configured as a separate
> -# block in this configuration file. The network blocks are in preference order
> -# (the first match is used).
> -#
> -# network block fields:
> -#
> -# disabled:
> -#	0 = this network can be used (default)
> -#	1 = this network block is disabled (can be enabled through ctrl_iface,
> -#	    e.g., with wpa_cli or wpa_gui)
> -#
> -# id_str: Network identifier string for external scripts. This value is passed
> -#	to external action script through wpa_cli as WPA_ID_STR environment
> -#	variable to make it easier to do network specific configuration.
> -#
> -# ssid: SSID (mandatory); either as an ASCII string with double quotation or
> -#	as hex string; network name
> -#
> -# scan_ssid:
> -#	0 = do not scan this SSID with specific Probe Request frames (default)
> -#	1 = scan with SSID-specific Probe Request frames (this can be used to
> -#	    find APs that do not accept broadcast SSID or use multiple SSIDs;
> -#	    this will add latency to scanning, so enable this only when needed)
> -#
> -# bssid: BSSID (optional); if set, this network block is used only when
> -#	associating with the AP using the configured BSSID
> -#
> -# priority: priority group (integer)
> -# By default, all networks will get same priority group (0). If some of the
> -# networks are more desirable, this field can be used to change the order in
> -# which wpa_supplicant goes through the networks when selecting a BSS. The
> -# priority groups will be iterated in decreasing priority (i.e., the larger the
> -# priority value, the sooner the network is matched against the scan results).
> -# Within each priority group, networks will be selected based on security
> -# policy, signal strength, etc.
> -# Please note that AP scanning with scan_ssid=1 and ap_scan=2 mode are not
> -# using this priority to select the order for scanning. Instead, they try the
> -# networks in the order that used in the configuration file.
> -#
> -# mode: IEEE 802.11 operation mode
> -# 0 = infrastructure (Managed) mode, i.e., associate with an AP (default)
> -# 1 = IBSS (ad-hoc, peer-to-peer)
> -# Note: IBSS can only be used with key_mgmt NONE (plaintext and static WEP)
> -# and key_mgmt=WPA-NONE (fixed group key TKIP/CCMP). In addition, ap_scan has
> -# to be set to 2 for IBSS. WPA-None requires following network block options:
> -# proto=WPA, key_mgmt=WPA-NONE, pairwise=NONE, group=TKIP (or CCMP, but not
> -# both), and psk must also be set.
> -#
> -# proto: list of accepted protocols
> -# WPA = WPA/IEEE 802.11i/D3.0
> -# RSN = WPA2/IEEE 802.11i (also WPA2 can be used as an alias for RSN)
> -# If not set, this defaults to: WPA RSN
> -#
> -# key_mgmt: list of accepted authenticated key management protocols
> -# WPA-PSK = WPA pre-shared key (this requires 'psk' field)
> -# WPA-EAP = WPA using EAP authentication (this can use an external
> -#	program, e.g., Xsupplicant, for IEEE 802.1X EAP Authentication
> -# IEEE8021X = IEEE 802.1X using EAP authentication and (optionally) dynamically
> -#	generated WEP keys
> -# NONE = WPA is not used; plaintext or static WEP could be used
> -# If not set, this defaults to: WPA-PSK WPA-EAP
> -#
> -# auth_alg: list of allowed IEEE 802.11 authentication algorithms
> -# OPEN = Open System authentication (required for WPA/WPA2)
> -# SHARED = Shared Key authentication (requires static WEP keys)
> -# LEAP = LEAP/Network EAP (only used with LEAP)
> -# If not set, automatic selection is used (Open System with LEAP enabled if
> -# LEAP is allowed as one of the EAP methods).
> -#
> -# pairwise: list of accepted pairwise (unicast) ciphers for WPA
> -# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
> -# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
> -# NONE = Use only Group Keys (deprecated, should not be included if APs support
> -#	pairwise keys)
> -# If not set, this defaults to: CCMP TKIP
> -#
> -# group: list of accepted group (broadcast/multicast) ciphers for WPA
> -# CCMP = AES in Counter mode with CBC-MAC [RFC 3610, IEEE 802.11i/D7.0]
> -# TKIP = Temporal Key Integrity Protocol [IEEE 802.11i/D7.0]
> -# WEP104 = WEP (Wired Equivalent Privacy) with 104-bit key
> -# WEP40 = WEP (Wired Equivalent Privacy) with 40-bit key [IEEE 802.11]
> -# If not set, this defaults to: CCMP TKIP WEP104 WEP40
> -#
> -# psk: WPA preshared key; 256-bit pre-shared key
> -# The key used in WPA-PSK mode can be entered either as 64 hex-digits, i.e.,
> -# 32 bytes or as an ASCII passphrase (in which case, the real PSK will be
> -# generated using the passphrase and SSID). ASCII passphrase must be between
> -# 8 and 63 characters (inclusive).
> -# This field is not needed, if WPA-EAP is used.
> -# Note: Separate tool, wpa_passphrase, can be used to generate 256-bit keys
> -# from ASCII passphrase. This process uses lot of CPU and wpa_supplicant
> -# startup and reconfiguration time can be optimized by generating the PSK only
> -# only when the passphrase or SSID has actually changed.
> -#
> -# eapol_flags: IEEE 802.1X/EAPOL options (bit field)
> -# Dynamic WEP key required for non-WPA mode
> -# bit0 (1): require dynamically generated unicast WEP key
> -# bit1 (2): require dynamically generated broadcast WEP key
> -# 	(3 = require both keys; default)
> -# Note: When using wired authentication, eapol_flags must be set to 0 for the
> -# authentication to be completed successfully.
> -#
> -# proactive_key_caching:
> -# Enable/disable opportunistic PMKSA caching for WPA2.
> -# 0 = disabled (default)
> -# 1 = enabled
> -#
> -# wep_key0..3: Static WEP key (ASCII in double quotation, e.g. "abcde" or
> -# hex without quotation, e.g., 0102030405)
> -# wep_tx_keyidx: Default WEP key index (TX) (0..3)
> -#
> -# peerkey: Whether PeerKey negotiation for direct links (IEEE 802.11e DLS) is
> -# allowed. This is only used with RSN/WPA2.
> -# 0 = disabled (default)
> -# 1 = enabled
> -#peerkey=1
> -#
> -# Following fields are only used with internal EAP implementation.
> -# eap: space-separated list of accepted EAP methods
> -#	MD5 = EAP-MD5 (unsecure and does not generate keying material ->
> -#			cannot be used with WPA; to be used as a Phase 2 method
> -#			with EAP-PEAP or EAP-TTLS)
> -#       MSCHAPV2 = EAP-MSCHAPv2 (cannot be used separately with WPA; to be used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#       OTP = EAP-OTP (cannot be used separately with WPA; to be used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#       GTC = EAP-GTC (cannot be used separately with WPA; to be used
> -#		as a Phase 2 method with EAP-PEAP or EAP-TTLS)
> -#	TLS = EAP-TLS (client and server certificate)
> -#	PEAP = EAP-PEAP (with tunnelled EAP authentication)
> -#	TTLS = EAP-TTLS (with tunnelled EAP or PAP/CHAP/MSCHAP/MSCHAPV2
> -#			 authentication)
> -#	If not set, all compiled in methods are allowed.
> -#
> -# identity: Identity string for EAP
> -# anonymous_identity: Anonymous identity string for EAP (to be used as the
> -#	unencrypted identity with EAP types that support different tunnelled
> -#	identity, e.g., EAP-TTLS)
> -# password: Password string for EAP
> -# ca_cert: File path to CA certificate file (PEM/DER). This file can have one
> -#	or more trusted CA certificates. If ca_cert and ca_path are not
> -#	included, server certificate will not be verified. This is insecure and
> -#	a trusted CA certificate should always be configured when using
> -#	EAP-TLS/TTLS/PEAP. Full path should be used since working directory may
> -#	change when wpa_supplicant is run in the background.
> -#	On Windows, trusted CA certificates can be loaded from the system
> -#	certificate store by setting this to cert_store://<name>, e.g.,
> -#	ca_cert="cert_store://CA" or ca_cert="cert_store://ROOT".
> -#	Note that when running wpa_supplicant as an application, the user
> -#	certificate store (My user account) is used, whereas computer store
> -#	(Computer account) is used when running wpasvc as a service.
> -# ca_path: Directory path for CA certificate files (PEM). This path may
> -#	contain multiple CA certificates in OpenSSL format. Common use for this
> -#	is to point to system trusted CA list which is often installed into
> -#	directory like /etc/ssl/certs. If configured, these certificates are
> -#	added to the list of trusted CAs. ca_cert may also be included in that
> -#	case, but it is not required.
> -# client_cert: File path to client certificate file (PEM/DER)
> -#	Full path should be used since working directory may change when
> -#	wpa_supplicant is run in the background.
> -#	Alternatively, a named configuration blob can be used by setting this
> -#	to blob://<blob name>.
> -# private_key: File path to client private key file (PEM/DER/PFX)
> -#	When PKCS#12/PFX file (.p12/.pfx) is used, client_cert should be
> -#	commented out. Both the private key and certificate will be read from
> -#	the PKCS#12 file in this case. Full path should be used since working
> -#	directory may change when wpa_supplicant is run in the background.
> -#	Windows certificate store can be used by leaving client_cert out and
> -#	configuring private_key in one of the following formats:
> -#	cert://substring_to_match
> -#	hash://certificate_thumbprint_in_hex
> -#	for example: private_key="hash://63093aa9c47f56ae88334c7b65a4"
> -#	Note that when running wpa_supplicant as an application, the user
> -#	certificate store (My user account) is used, whereas computer store
> -#	(Computer account) is used when running wpasvc as a service.
> -#	Alternatively, a named configuration blob can be used by setting this
> -#	to blob://<blob name>.
> -# private_key_passwd: Password for private key file (if left out, this will be
> -#	asked through control interface)
> -# dh_file: File path to DH/DSA parameters file (in PEM format)
> -#	This is an optional configuration file for setting parameters for an
> -#	ephemeral DH key exchange. In most cases, the default RSA
> -#	authentication does not use this configuration. However, it is possible
> -#	setup RSA to use ephemeral DH key exchange. In addition, ciphers with
> -#	DSA keys always use ephemeral DH keys. This can be used to achieve
> -#	forward secrecy. If the file is in DSA parameters format, it will be
> -#	automatically converted into DH params.
> -# subject_match: Substring to be matched against the subject of the
> -#	authentication server certificate. If this string is set, the server
> -#	sertificate is only accepted if it contains this string in the subject.
> -#	The subject string is in following format:
> -#	/C=US/ST=CA/L=San Francisco/CN=Test AS/emailAddress=as@example.com
> -# altsubject_match: Semicolon separated string of entries to be matched against
> -#	the alternative subject name of the authentication server certificate.
> -#	If this string is set, the server sertificate is only accepted if it
> -#	contains one of the entries in an alternative subject name extension.
> -#	altSubjectName string is in following format: TYPE:VALUE
> -#	Example: EMAIL:server@example.com
> -#	Example: DNS:server.example.com;DNS:server2.example.com
> -#	Following types are supported: EMAIL, DNS, URI
> -# phase1: Phase1 (outer authentication, i.e., TLS tunnel) parameters
> -#	(string with field-value pairs, e.g., "peapver=0" or
> -#	"peapver=1 peaplabel=1")
> -#	'peapver' can be used to force which PEAP version (0 or 1) is used.
> -#	'peaplabel=1' can be used to force new label, "client PEAP encryption",
> -#	to be used during key derivation when PEAPv1 or newer. Most existing
> -#	PEAPv1 implementation seem to be using the old label, "client EAP
> -#	encryption", and wpa_supplicant is now using that as the default value.
> -#	Some servers, e.g., Radiator, may require peaplabel=1 configuration to
> -#	interoperate with PEAPv1; see eap_testing.txt for more details.
> -#	'peap_outer_success=0' can be used to terminate PEAP authentication on
> -#	tunneled EAP-Success. This is required with some RADIUS servers that
> -#	implement draft-josefsson-pppext-eap-tls-eap-05.txt (e.g.,
> -#	Lucent NavisRadius v4.4.0 with PEAP in "IETF Draft 5" mode)
> -#	include_tls_length=1 can be used to force wpa_supplicant to include
> -#	TLS Message Length field in all TLS messages even if they are not
> -#	fragmented.
> -#	sim_min_num_chal=3 can be used to configure EAP-SIM to require three
> -#	challenges (by default, it accepts 2 or 3)
> -# phase2: Phase2 (inner authentication with TLS tunnel) parameters
> -#	(string with field-value pairs, e.g., "auth=MSCHAPV2" for EAP-PEAP or
> -#	"autheap=MSCHAPV2 autheap=MD5" for EAP-TTLS)
> -# Following certificate/private key fields are used in inner Phase2
> -# authentication when using EAP-TTLS or EAP-PEAP.
> -# ca_cert2: File path to CA certificate file. This file can have one or more
> -#	trusted CA certificates. If ca_cert2 and ca_path2 are not included,
> -#	server certificate will not be verified. This is insecure and a trusted
> -#	CA certificate should always be configured.
> -# ca_path2: Directory path for CA certificate files (PEM)
> -# client_cert2: File path to client certificate file
> -# private_key2: File path to client private key file
> -# private_key2_passwd: Password for private key file
> -# dh_file2: File path to DH/DSA parameters file (in PEM format)
> -# subject_match2: Substring to be matched against the subject of the
> -#	authentication server certificate.
> -# altsubject_match2: Substring to be matched against the alternative subject
> -#	name of the authentication server certificate.
> -#
> -# fragment_size: Maximum EAP fragment size in bytes (default 1398).
> -#	This value limits the fragment size for EAP methods that support
> -#	fragmentation (e.g., EAP-TLS and EAP-PEAP). This value should be set
> -#	small enough to make the EAP messages fit in MTU of the network
> -#	interface used for EAPOL. The default value is suitable for most
> -#	cases.
> -#
> -# EAP-PSK variables:
> -# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
> -# nai: user NAI
> -#
> -# EAP-PAX variables:
> -# eappsk: 16-byte (128-bit, 32 hex digits) pre-shared key in hex format
> -#
> -# EAP-SAKE variables:
> -# eappsk: 32-byte (256-bit, 64 hex digits) pre-shared key in hex format
> -#	(this is concatenation of Root-Secret-A and Root-Secret-B)
> -# nai: user NAI (PEERID)
> -#
> -# EAP-GPSK variables:
> -# eappsk: Pre-shared key in hex format (at least 128 bits, i.e., 32 hex digits)
> -# nai: user NAI (ID_Client)
> -#
> -# EAP-FAST variables:
> -# pac_file: File path for the PAC entries. wpa_supplicant will need to be able
> -#	to create this file and write updates to it when PAC is being
> -#	provisioned or refreshed. Full path to the file should be used since
> -#	working directory may change when wpa_supplicant is run in the
> -#	background. Alternatively, a named configuration blob can be used by
> -#	setting this to blob://<blob name>
> -# phase1: fast_provisioning=1 option enables in-line provisioning of EAP-FAST
> -#	credentials (PAC)
> -#
> -# wpa_supplicant supports number of "EAP workarounds" to work around
> -# interoperability issues with incorrectly behaving authentication servers.
> -# These are enabled by default because some of the issues are present in large
> -# number of authentication servers. Strict EAP conformance mode can be
> -# configured by disabling workarounds with eap_workaround=0.
> -
> -# Example blocks:
> -
> -# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
> -network={
> -	ssid="simple"
> -	psk="very secret passphrase"
> -	priority=5
> -}
> -
> -# Same as previous, but request SSID-specific scanning (for APs that reject
> -# broadcast SSID)
> -network={
> -	ssid="second ssid"
> -	scan_ssid=1
> -	psk="very secret passphrase"
> -	priority=2
> -}
> -
> -# Only WPA-PSK is used. Any valid cipher combination is accepted.
> -network={
> -	ssid="example"
> -	proto=WPA
> -	key_mgmt=WPA-PSK
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP WEP104 WEP40
> -	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
> -	priority=2
> -}
> -
> -# Only WPA-EAP is used. Both CCMP and TKIP is accepted. An AP that used WEP104
> -# or WEP40 as the group cipher will not be accepted.
> -network={
> -	ssid="example"
> -	proto=RSN
> -	key_mgmt=WPA-EAP
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP
> -	eap=TLS
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	priority=1
> -}
> -
> -# EAP-PEAP/MSCHAPv2 configuration for RADIUS servers that use the new peaplabel
> -# (e.g., Radiator)
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=PEAP
> -	identity="user@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	phase1="peaplabel=1"
> -	phase2="auth=MSCHAPV2"
> -	priority=10
> -}
> -
> -# EAP-TTLS/EAP-MD5-Challenge configuration with anonymous identity for the
> -# unencrypted use. Real identity is sent only within an encrypted TLS tunnel.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	priority=2
> -}
> -
> -# EAP-TTLS/MSCHAPv2 configuration with anonymous identity for the unencrypted
> -# use. Real identity is sent only within an encrypted TLS tunnel.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	phase2="auth=MSCHAPV2"
> -}
> -
> -# WPA-EAP, EAP-TTLS with different CA certificate used for outer and inner
> -# authentication.
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	# Phase1 / outer authentication
> -	anonymous_identity="anonymous@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	# Phase 2 / inner authentication
> -	phase2="autheap=TLS"
> -	ca_cert2="/etc/cert/ca2.pem"
> -	client_cert2="/etc/cer/user.pem"
> -	private_key2="/etc/cer/user.prv"
> -	private_key2_passwd="password"
> -	priority=2
> -}
> -
> -# Both WPA-PSK and WPA-EAP is accepted. Only CCMP is accepted as pairwise and
> -# group cipher.
> -network={
> -	ssid="example"
> -	bssid=00:11:22:33:44:55
> -	proto=WPA RSN
> -	key_mgmt=WPA-PSK WPA-EAP
> -	pairwise=CCMP
> -	group=CCMP
> -	psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
> -}
> -
> -# Special characters in SSID, so use hex string. Default to WPA-PSK, WPA-EAP
> -# and all valid ciphers.
> -network={
> -	ssid=00010203
> -	psk=000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
> -}
> -
> -
> -# IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using
> -# EAP-TLS for authentication and key generation; require both unicast and
> -# broadcast WEP keys.
> -network={
> -	ssid="1x-test"
> -	key_mgmt=IEEE8021X
> -	eap=TLS
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	eapol_flags=3
> -}
> -
> -
> -# LEAP with dynamic WEP keys
> -network={
> -	ssid="leap-example"
> -	key_mgmt=IEEE8021X
> -	eap=LEAP
> -	identity="user"
> -	password="foobar"
> -}
> -
> -# Plaintext connection (no WPA, no IEEE 802.1X)
> -network={
> -	ssid="plaintext-test"
> -	key_mgmt=NONE
> -}
> -
> -
> -# Shared WEP key connection (no WPA, no IEEE 802.1X)
> -network={
> -	ssid="static-wep-test"
> -	key_mgmt=NONE
> -	wep_key0="abcde"
> -	wep_key1=0102030405
> -	wep_key2="1234567890123"
> -	wep_tx_keyidx=0
> -	priority=5
> -}
> -
> -
> -# Shared WEP key connection (no WPA, no IEEE 802.1X) using Shared Key
> -# IEEE 802.11 authentication
> -network={
> -	ssid="static-wep-test2"
> -	key_mgmt=NONE
> -	wep_key0="abcde"
> -	wep_key1=0102030405
> -	wep_key2="1234567890123"
> -	wep_tx_keyidx=0
> -	priority=5
> -	auth_alg=SHARED
> -}
> -
> -
> -# IBSS/ad-hoc network with WPA-None/TKIP.
> -network={
> -	ssid="test adhoc"
> -	mode=1
> -	proto=WPA
> -	key_mgmt=WPA-NONE
> -	pairwise=NONE
> -	group=TKIP
> -	psk="secret passphrase"
> -}
> -
> -
> -# Catch all example that allows more or less all configuration modes
> -network={
> -	ssid="example"
> -	scan_ssid=1
> -	key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP WEP104 WEP40
> -	psk="very secret passphrase"
> -	eap=TTLS PEAP TLS
> -	identity="user@example.com"
> -	password="foobar"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -	private_key="/etc/cert/user.prv"
> -	private_key_passwd="password"
> -	phase1="peaplabel=0"
> -}
> -
> -# Example of EAP-TLS with smartcard (openssl engine)
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TLS
> -	proto=RSN
> -	pairwise=CCMP TKIP
> -	group=CCMP TKIP
> -	identity="user@example.com"
> -	ca_cert="/etc/cert/ca.pem"
> -	client_cert="/etc/cert/user.pem"
> -
> -	engine=1
> -
> -	# The engine configured here must be available. Look at
> -	# OpenSSL engine support in the global section.
> -	# The key available through the engine must be the private key
> -	# matching the client certificate configured above.
> -
> -	# use the opensc engine
> -	#engine_id="opensc"
> -	#key_id="45"
> -
> -	# use the pkcs11 engine
> -	engine_id="pkcs11"
> -	key_id="id_45"
> -
> -	# Optional PIN configuration; this can be left out and PIN will be
> -	# asked through the control interface
> -	pin="1234"
> -}
> -
> -# Example configuration showing how to use an inlined blob as a CA certificate
> -# data instead of using external file
> -network={
> -	ssid="example"
> -	key_mgmt=WPA-EAP
> -	eap=TTLS
> -	identity="user@example.com"
> -	anonymous_identity="anonymous@example.com"
> -	password="foobar"
> -	ca_cert="blob://exampleblob"
> -	priority=20
> -}
> -
> -blob-base64-exampleblob={
> -SGVsbG8gV29ybGQhCg==
> -}
> -
> -
> -# Wildcard match for SSID (plaintext APs only). This example select any
> -# open AP regardless of its SSID.
> -network={
> -	key_mgmt=NONE
> -}
> +device_name=Blaze
> +manufacturer=TI
> +model_name=Wilink
> +model_number=wl18xx
> +serial_number=12345
> +driver_param=use_multi_chan_concurrent=1 use_p2p_group_interface=1
> +# Timeout in seconds to detect STA inactivity (default: 300 seconds)
> +#
> +# This timeout value is used in P2P GO mode to clean up
> +# inactive stations.
> +p2p_go_max_inactivity=60
> +p2p_go_ht40=1
> +p2p_multi_chan=1
> +disassoc_low_ack=1
> +concurrent_sched_scan=1
> -- 
> 1.7.9
> 
> _______________________________________________
> meta-arago mailing list
> meta-arago@arago-project.org
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-12-04  7:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-28 11:32 [PATCH 01/14] wpa-supplicant-wl18xx: Update recipe to ol_r8.a8.08 version Yaniv Mahani
2013-11-30 17:28 ` Cooper Jr., Franklin
2013-12-04  7:05 ` Denys Dmytriyenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.