# HG changeset patch # User Pascal Bellard # Date 1216494153 -7200 # Node ID 7dda975a29e982a92b8d1446da6408fe760dd4e4 # Parent 87842dc336d61eb725b578acc65e107e81a3a8c2 netbox: fix essid detection (2) diff -r 87842dc336d6 -r 7dda975a29e9 tinyutils/netbox --- a/tinyutils/netbox Sat Jul 19 15:12:30 2008 +0000 +++ b/tinyutils/netbox Sat Jul 19 21:02:33 2008 +0200 @@ -28,17 +28,17 @@ # Detect WIFI_INTERFACE and update /etc/network.conf . /etc/network.conf -if ! iwconfig $WIFI_INTERFACE 2>&1 | grep -iq "essid"; then - WIFI_INTERFACE=$(grep : /proc/net/dev | cut -d: -f1 | \ - while read dev; do iwconfig $dev 2>&1 | \ - grep -iq "essid" && { echo $dev ; break; }; \ - done) +if [ ! -d /sys/class/net/$WIFI_INTERFACE/wireless ]; then + WIFI_INTERFACE=$(for i in /sys/class/net/*/wireless; do \ + [ -d $i ] && echo $(basename $(dirname $i)) || echo wlan0; \ + break; done) [ -n "$WIFI_INTERFACE" ] && sed -i "s/^WIFI_INTERFACE=.*/WIFI_INTERFACE=\"$WIFI_INTERFACE\"/" /etc/network.conf fi ESSIDS="" # Detect ESSID list -if iwconfig $WIFI_INTERFACE 2>&1 | grep -iq "essid"; then +if [ -d /sys/class/net/$WIFI_INTERFACE/wireless ]; then + ifconfig $WIFI up for i in $(iwlist $WIFI_INTERFACE scanning | grep "ESSID" | \ grep -v "" | sed -n 's/ESSID:"//p' | sed -n 's/"//p'); do ESSIDS="$ESSIDS$i" @@ -218,11 +218,8 @@ INTERFACE' . /etc/network.conf -NET_BOX="$NET_BOX$INTERFACE$( -grep : /proc/net/dev | cut -d: -f1 | while read dev; do - [ "$(echo $dev)" = "$INTERFACE" ] && continue - echo "$dev" -done)" +NET_BOX="$NET_BOX$INTERFACE$(for dev in $(ls /sys/class/net); do + echo "$dev"; done)" tmp='