- WLDEVICE="$(LANG=C LC_MESSAGEWS=C iwconfig $DV 2>/dev/null | awk '/802\.11|READY|ESSID/{print $1}')"
- WLDEVICECOUNT="$(LANG=C LC_MESSAGEWS=C iwconfig $DV 2>/dev/null | wc -l)"
- if [ $iswireless -gt 0 ] && $DIALOG --yesno "$MESSAGE13" 8 45; then
- ESSID=""
- NWID=""
- MODE=""
- CHANNEL=""
- FREQ=""
- SENS=""
- RATE=""
- KEY=""
- RTS=""
- FRAG=""
- IWCONFIG=""
- IWSPY=""
- IWPRIV=""
-
- if [ -f /etc/network/interfaces ]; then
- awk '/iface/{if(/'"$DV"'/){found=1}else{found=0}}
- /essid/{if(found){for(i=NF;i>=2;i--)essid=$i "~" essid}}
- /nwid/{if(found){nwid=$NF}}
- /mode/{if(found){mode=$NF}}
- /channel/{if(found){channel=$NF}}
- /freq/{if(found){freq=$NF}}
- /sens/{if(found){sens=$NF}}
- /rate/{if(found){rate=$NF}}
- /rts/{if(found){rts=$NF}}
- /frag/{if(found){frag=$NF}}
- /iwconfig/{if(!/KEY/){if(found){iwconfig=$NF}}}
- /iwspy/{if(found){iwspy=$NF}}
- /iwpriv/{if(found){iwpriv=$NF}}
- /wireless[-_]key/{if(found){gsub(/^\W*wireless[-_]key\W*/,"");key=$0}}
- END{
- if (!(length(essid))){essid="~~~"}
- if (!(length(nwid))){nwid="~~~"}
- if (!(length(mode))){mode="~~~"}
- if (!(length(channel))){channel="~~~"}
- if (!(length(freq))){freq="~~~"}
- if (!(length(sens))){sens="~~~"}
- if (!(length(rate))){rate="~~~"}
- if (!(length(rts))){rts="~~~"}
- if (!(length(frag))){frag="~~~"}
- if (!(length(iwconfig))){iwconfig="~~~"}
- if (!(length(iwspy))){iwspy="~~~"}
- if (!(length(iwpriv))){iwpriv="~~~"}
- if (!(length(key))){key="~~~"}
- print essid" "nwid" "mode" "channel" "freq" "sens" "rate" "rts" "frag" "iwconfig" "iwspy" "iwpriv" "key
- }' /etc/network/interfaces >"$TMP"
-
- read ESSID NWID MODE CHANNEL FREQ SENS RATE RTS FRAG IWCONFIG IWSPY IWPRIV KEY<"$TMP"
-
- [ "$ESSID" = "~~~" ] && ESSID=""
- [ "$NWID" = "~~~" ] && NWID=""
- [ "$MODE" = "~~~" ] && MODE=""
- [ "$CHANNEL" = "~~~" ] && CHANNEL=""
- [ "$FREQ" = "~~~" ] && FREQ=""
- [ "$SENS" = "~~~" ] && SENS=""
- [ "$RATE" = "~~~" ] && RATE=""
- [ "$RTS" = "~~~" ] && RTS=""
- [ "$FRAG" = "~~~" ] && FRAG=""
- [ "$IWCONFIG" = "~~~" ] && IWCONFIG=""
- [ "$IWSPY" = "~~~" ] && IWSPY=""
- [ "$IWPRIV" = "~~~" ] && IWPRIV=""
- [ "$KEY" = "~~~" ] && KEY=""
-
- ESSID=$(echo $ESSID | tr "~" " " | sed 's/ *$//')
-
- if [ -z "$KEY" ]; then
- KEY=$(cat /etc/network/wep.$DV 2>/dev/null)
+ WLDEVICECOUNT="$(LANG=C LC_MESSAGEWS=C iwconfig "$DV" 2>/dev/null | wc -l)"
+ if "${INTERACTIVE}" ; then
+ if [ $iswireless -gt 0 ] && $DIALOG --yesno "$MESSAGE13" 8 45; then
+ ESSID=""
+ NWID=""
+ MODE=""
+ CHANNEL=""
+ FREQ=""
+ SENS=""
+ RATE=""
+ KEY=""
+ RTS=""
+ FRAG=""
+ IWCONFIG=""
+ IWSPY=""
+ IWPRIV=""
+
+ if [ -f /etc/network/interfaces ]; then
+ awk '/iface/{if(/'"$DV"'/){found=1}else{found=0}}
+ /essid/{if(found){for(i=NF;i>=2;i--)essid=$i "~" essid}}
+ /nwid/{if(found){nwid=$NF}}
+ /mode/{if(found){mode=$NF}}
+ /channel/{if(found){channel=$NF}}
+ /freq/{if(found){freq=$NF}}
+ /sens/{if(found){sens=$NF}}
+ /rate/{if(found){rate=$NF}}
+ /rts/{if(found){rts=$NF}}
+ /frag/{if(found){frag=$NF}}
+ /iwconfig/{if(!/KEY/){if(found){iwconfig=$NF}}}
+ /iwspy/{if(found){iwspy=$NF}}
+ /iwpriv/{if(found){iwpriv=$NF}}
+ /wireless[-_]key/{if(found){gsub(/^\W*wireless[-_]key\W*/,"");key=$0}}
+ END{
+ if (!(length(essid))){essid="~~~"}
+ if (!(length(nwid))){nwid="~~~"}
+ if (!(length(mode))){mode="~~~"}
+ if (!(length(channel))){channel="~~~"}
+ if (!(length(freq))){freq="~~~"}
+ if (!(length(sens))){sens="~~~"}
+ if (!(length(rate))){rate="~~~"}
+ if (!(length(rts))){rts="~~~"}
+ if (!(length(frag))){frag="~~~"}
+ if (!(length(iwconfig))){iwconfig="~~~"}
+ if (!(length(iwspy))){iwspy="~~~"}
+ if (!(length(iwpriv))){iwpriv="~~~"}
+ if (!(length(key))){key="~~~"}
+ print essid" "nwid" "mode" "channel" "freq" "sens" "rate" "rts" "frag" "iwconfig" "iwspy" "iwpriv" "key
+ }' /etc/network/interfaces >"$TMP"
+
+ read -r ESSID NWID MODE CHANNEL FREQ SENS RATE RTS FRAG IWCONFIG IWSPY IWPRIV KEY<"$TMP"
+
+ [[ "$ESSID" =~ ^~~~$ ]] && ESSID=""
+ [[ "$NWID" =~ ^~~~$ ]] && NWID=""
+ [[ "$MODE" =~ ^~~~$ ]] && MODE=""
+ [[ "$CHANNEL" =~ ^~~~$ ]] && CHANNEL=""
+ [[ "$FREQ" =~ ^~~~$ ]] && FREQ=""
+ [[ "$SENS" =~ ^~~~$ ]] && SENS=""
+ [[ "$RATE" =~ ^~~~$ ]] && RATE=""
+ [[ "$RTS" =~ ^~~~$ ]] && RTS=""
+ [[ "$FRAG" =~ ^~~~$ ]] && FRAG=""
+ [[ "$IWCONFIG" =~ ^~~~$ ]] && IWCONFIG=""
+ [[ "$IWSPY" =~ ^~~~$ ]] && IWSPY=""
+ [[ "$IWPRIV" =~ ^~~~$ ]] && IWPRIV=""
+ [[ "$KEY" =~ ^~~~$ ]] && KEY=""
+
+ # shellcheck disable=SC2088
+ ESSID=$(echo $ESSID | tr '~' " " | sed 's/ *$//')