--wpa-mode="${line[4]}" \
--ssid="${line[5]}" \
--psk="${line[6]}" \
- --priority="${line[7]}"
+ --priority="${line[7]}" \
+ --auth-mode="${line[8]}" \
+ --anonymous-identity="${line[9]}" \
+ --identity="${line[10]}" \
+ --password="${line[11]}"
items=$(( ${items} + 1 ))
local config=${2}
shift 2
+ local anonymous_identity
local auth_alg
+ local auth_mode
+ local identity
local proto
local key_mgmt
local pairwise
local group
local mode
+ local password
local priority
local psk
local ssid
while [ $# -gt 0 ]; do
case "${1}" in
+ --anonymous-identity=*)
+ anonymous_identity=${1#--anonymous-identity=}
+ ;;
+ --auth-mode=*)
+ auth_mode=${1#--auth-mode=}
+ ;;
+ --identity=*)
+ identity=${1#--identity=}
+ ;;
--mode=*)
mode=${1#--mode=}
;;
+ --password=*)
+ password=${1#--password=}
+ ;;
--priority=*)
priority=${1#--priority=}
;;
done
case "${mode}" in
+ EAP)
+ key_mgmt="WPA-EAP"
+ ;;
WPA2)
auth_alg="OPEN"
proto="RSN"
;;
esac
- if [ "${mode}" = "WPA" -o "${mode}" = "WPA2" ]; then
+ if [ "${mode}" = "EAP" -o "${mode}" = "WPA" -o "${mode}" = "WPA2" ]; then
case "${wpa_mode}" in
CCMP-CCMP)
pairwise="CCMP"
echo " priority=${priority}"
fi
+ # EAP
+ if [ "${mode}" = "EAP" ]; then
+ if [ -n "${auth_mode}" ]; then
+ echo " eap=${auth_mode}"
+ else
+ echo " eap=PEAP TTLS"
+ fi
+
+ if [ "${auth_mode}" = "TTLS" -a -n "${anonymous_identity}" ]; then
+ echo " anonymous_identity=\"${anonymous_identity}\""
+ fi
+
+ if [ -n "${identity}" -a -n "${password}" ]; then
+ echo " identity=\"${identity}\""
+ echo " password=\"${password}\""
+ fi
+ fi
+
echo "}"
echo
) >> ${config}