diff options
author | James Rayner <james@archlinux.org> | 2008-01-13 10:57:13 +0100 |
---|---|---|
committer | James Rayner <james@archlinux.org> | 2008-01-13 10:57:13 +0100 |
commit | b5019b2056a9f0d603fb1e60065ae007bd04e13b (patch) | |
tree | d3f7ef958ef696cc2fd8cc40e6667f8edf18c7fb /contrib/netcfg-auto-wireless | |
parent | 36c19e429986e4ef52069399b850bee03b1a7925 (diff) | |
download | netctl-b5019b2056a9f0d603fb1e60065ae007bd04e13b.tar.gz netctl-b5019b2056a9f0d603fb1e60065ae007bd04e13b.tar.xz |
Fix Error 12: File not found error, and make netcfg-auto-wireless output look better
Diffstat (limited to 'contrib/netcfg-auto-wireless')
-rwxr-xr-x | contrib/netcfg-auto-wireless | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/contrib/netcfg-auto-wireless b/contrib/netcfg-auto-wireless index 02533c8..e4cf869 100755 --- a/contrib/netcfg-auto-wireless +++ b/contrib/netcfg-auto-wireless @@ -3,7 +3,8 @@ . /usr/lib/network/network.subr . /usr/lib/network/wireless.subr - +. /etc/rc.conf +. /etc/rc.d/functions # wifi_auto # autoconnect wireless interface # $1 - wireless interface @@ -11,6 +12,15 @@ wifi_auto() { INTERFACE=$1; RETRIES=6 + stat_busy "Scanning for networks" + + networks="$(list_networks $INTERFACE)" + + if [[ ! "$networks" ]]; then + stat_append "- No networks available." + stat_fail + exit 1 + fi while read essid; do # awfully long grep that finds a file which has: @@ -19,14 +29,16 @@ wifi_auto() if [[ -n "$profile" ]]; then break # If we found a profile, use it. fi - done < "$(list_networks $INTERFACE)" + done < $networks # If there's a profile, connect, else fail. if [[ -n "$profile" ]]; then - netcfg2 $(basename $profile) - exit $? + stat_done + netcfg2 $(basename $profile) + exit $? else - err "No network found" + stat_append "- No profiles matched the found networks" + stat_fail exit 1 fi } @@ -39,5 +51,5 @@ if [[ -z $1 ]]; then err "Please supply an interface to connect" exit 1 fi - wifi_auto $1 + |