/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to network-hooks.d/wireless

  • Committer: teddy at recompile
  • Date: 2011-12-31 13:25:58 UTC
  • mto: This revision was merged to the branch mainline in revision 541.
  • Revision ID: teddy@recompile.se-20111231132558-z0dh7qgofgctmgri
* network-hooks.s/bridge: Don't use interface names directly; search
                          for interface names using their address.
  (addrtoif): New function.
* network-hooks.s/bridge.conf (PORTS): Removed.
  (PORT_ADDRESSES): New.
* network-hooks.s/wireless: Don't use interface names directly; search
                            for interface names using their address.
  (addrtoif): New function.
* network-hooks.s/wireless.conf: Specify address.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
CONFIG="$MANDOSNETHOOKDIR/wireless.conf"
22
22
 
23
23
addrtoif(){
24
 
    grep -liFe "$1" /sys/class/net/*/address \
25
 
        | sed -e 's,.*/\([^/]*\)/[^/]*,\1,'
 
24
    grep -liFe "$1" /sys/class/net/*/address | sed -e 's,.*/\([^/]*\)/[^/]*,\1,'
26
25
}
27
26
 
28
27
# Read config file
32
31
    exit
33
32
fi
34
33
 
35
 
ifkeys=`env | sed -n -e 's/^ADDRESS_\([^=]*\)=.*/\1/p' "$CONFIG" \
36
 
    | sort -u`
 
34
ifkeys="`env | sed -n -e 's/^ADDRESS_\([^=]*\)=.*/\1/p' \"$CONFIG\" | sort -u`"
37
35
 
38
36
# Exit if DEVICE is set and is not any of the wireless interfaces
39
37
if [ -n "$DEVICE" ]; then
82
80
            "$wpa_cli" -g "$CTRL" interface_add "$INTERFACE" "" \
83
81
                "${DRIVER:-wext}" "$CTRLDIR" > /dev/null \
84
82
                | sed -e '/^OK$/d'
85
 
            NETWORK=`"$wpa_cli" -p "$CTRLDIR" -i "$INTERFACE" \
86
 
                add_network`
 
83
            NETWORK=`"$wpa_cli" -p "$CTRLDIR" -i "$INTERFACE" add_network`
87
84
            eval wpa_interface_"$KEY"
88
85
            "$wpa_cli" -p "$CTRLDIR" -i "$INTERFACE" enable_network \
89
86
                "$NETWORK" | sed -e '/^OK$/d'
91
88
            sleep=$!
92
89
            while :; do
93
90
                kill -0 $sleep 2>/dev/null || break
94
 
                STATE=`"$wpa_cli" -p "$CTRLDIR" -i "$INTERFACE" \
95
 
                    status | sed -n -e 's/^wpa_state=//p'`
 
91
                STATE=`"$wpa_cli" -p "$CTRLDIR" -i "$INTERFACE" status | sed -n -e 's/^wpa_state=//p'`
96
92
                if [ "$STATE" = COMPLETED ]; then
97
93
                    while :; do
98
94
                        kill -0 $sleep 2>/dev/null || break 2