diff options
Diffstat (limited to 'src-wireless')
-rwxr-xr-x | src-wireless/net-auto | 28 | ||||
-rwxr-xr-x | src-wireless/netcfg-auto-wireless | 4 |
2 files changed, 15 insertions, 17 deletions
diff --git a/src-wireless/net-auto b/src-wireless/net-auto index add6711..a4f68b2 100755 --- a/src-wireless/net-auto +++ b/src-wireless/net-auto @@ -14,23 +14,21 @@ case "$1" in fi done - for network in ${AUTO_NETWORKS[@]}; do - case $network in - auto-*) # Automatic configuration, store type and get interface next - auto=$network - ;; - *) # Either interface or profile - if [[ "$auto" ]]; then # Auto set, so interface - /usr/bin/netcfg-$auto $network - unset auto - fi - esac - done - - add_daemon net-auto + # TODO: check if any way of using 'stacks' in bash + for iface in ${AUTO_NETWORKS[@]}; do + if [[ "${iface:0:4}" = "auto" ]]; then + auto=$iface + elif [[ "$auto" ]]; then + /usr/bin/netcfg-$auto $iface + [[ $? -eq 0 ]] && echo $iface >> /var/run/daemons/net-auto + unset auto + fi + done ;; stop) - /usr/bin/netcfg2 -a + for iface in $(cat /var/run/daemons/net-auto); do + netcfg interface-down $iface + done rm_daemon net-auto ;; restart) diff --git a/src-wireless/netcfg-auto-wireless b/src-wireless/netcfg-auto-wireless index e5e4fc1..a523bdd 100755 --- a/src-wireless/netcfg-auto-wireless +++ b/src-wireless/netcfg-auto-wireless @@ -11,7 +11,7 @@ # $1 - wireless interface wifi_auto() { - interface=$1; RETRIES=6 + interface=$1; stat_busy "Scanning for networks" ifconfig $interface up @@ -37,7 +37,7 @@ wifi_auto() done < $networks if [[ "$found" ]]; then - netcfg2 $found + netcfg $found exit $? fi |