diff options
author | Rémy Oudompheng <remy@archlinux.org> | 2011-06-19 19:12:27 +0200 |
---|---|---|
committer | Rémy Oudompheng <remy@archlinux.org> | 2011-06-19 19:12:27 +0200 |
commit | a2e81ec74e0247a307cbdc36b6b2697650ca10c7 (patch) | |
tree | 2ecd395746b90dc3d15e04df27c41a30492af49b /src | |
parent | b425d7737659bdc0758b2b759bf83a3ea34ba9ae (diff) | |
download | netctl-a2e81ec74e0247a307cbdc36b6b2697650ca10c7.tar.gz netctl-a2e81ec74e0247a307cbdc36b6b2697650ca10c7.tar.xz |
Replace iwgetid usage by wpa_cli.
Diffstat (limited to 'src')
-rw-r--r-- | src/8021x | 12 | ||||
-rw-r--r-- | src/connections/wireless | 2 |
2 files changed, 13 insertions, 1 deletions
@@ -56,6 +56,18 @@ wpa_reconfigure() { return $? } +wpa_check_current_essid() { + # usage: wpa_check_current_essid $interface $essid + # check that wpa_supplicant is connected to the right essid + local INTERFACE=$1 ESSID=$2 status + status=$($WPA_CLI -i "$INTERFACE" status | grep "^ssid=") + if (( $? == 0 )) && [[ "$status" == "ssid=$ESSID" ]]; then + return 0 + else + return 1 + fi +} + wpa_find_essid() { # usage: wpa_find_essid $INTERFACE $ESSID # look for existence of a given essid. Assumes wpa_supplicant is diff --git a/src/connections/wireless b/src/connections/wireless index 9915165..ccc877c 100644 --- a/src/connections/wireless +++ b/src/connections/wireless @@ -124,7 +124,7 @@ wireless_down() { # Returns status of profile - is it still functional? wireless_status() { load_profile "$1" - if [[ "$(iwgetid -r)" -ne "$ESSID" ]]; then + if ! wpa_check_current_essid "$INTERFACE" "$ESSID"; then return 1 elif ! ip link show dev "$INTERFACE" | fgrep -q "state UP"; then return 1 |