Merge tag 'upstream/0.9.4+r4178.20120131'
[debian/madwifi.git] / debian / madwifi-tools.050madwifi.if-pre-up
1 #!/bin/sh
2 #
3 # Debian ifupdown hook script for madwifi-ng
4 #
5 # Author:   Matt Brown <matt@mattb.net.nz>
6 # Modified by: Kel Modderman <kelrin@tpg.com.au>
7 #
8 # Copyright (C) 2005 - 2006    Matt Brown
9 #
10 # This is free software; you can redistribute it and/or modify it under the
11 # terms of the GNU General Public License as published by the Free Software
12 # Foundation; either version 2 of the License, or (at your option) any later
13 # version.
14 #
15 # This is distributed in the hope that it will be useful, but WITHOUT ANY
16 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
18 # details.
19 #
20 # On Debian GNU/Linux systems, the text of the GPL license can be found in
21 # /usr/share/common-licenses/GPL
22
23
24 WLANCONFIG=/sbin/wlanconfig
25
26 if [ ! -x "$WLANCONFIG" ]; then
27         exit 0
28 fi
29
30 if [ ! -n "$IF_MADWIFI_BASE" ]; then
31         exit 0
32 fi
33
34 if [ "$VERBOSITY" = "1" ]; then
35         TO_NULL="/dev/stdout"
36 else
37         TO_NULL="/dev/null"
38 fi
39
40 if [ -n "$IF_MADWIFI_MODE" ]; then
41         MODE="$IF_MADWIFI_MODE"
42 elif [ -n "$IF_WIRELESS_MODE" ]; then
43         MODE="$IF_WIRELESS_MODE"
44 else
45         exit 0
46 fi
47
48 if [ -n "$IF_MADWIFI_VAP" ]; then
49         VAP="$IF_MADWIFI_VAP"
50 else
51         VAP="$IFACE"
52 fi
53
54 if [ -d /proc/sys/net/$VAP ]; then
55         $WLANCONFIG $VAP destroy
56 fi
57
58 case "$MODE" in
59         Managed|managed|MANAGED)
60                 MODE="sta"
61                 ;;
62         Ad-Hoc|ad-hoc|AD-HOC)
63                 MODE="adhoc"
64                 ;;
65         Master|master|MASTER)
66                 MODE="ap"
67                 ;;
68         Monitor|monitor|MONITOR)
69                 MODE="monitor"
70                 ;;
71         sta|ap|wds|adhoc|ahdemo|monitor)
72                 MODE="$MODE"
73                 ;;
74         *)
75                 MODE="sta"
76                 ;;
77 esac
78
79 if [ -n "$IF_MADWIFI_OPTIONS" ]; then
80         $WLANCONFIG $VAP create wlandev $IF_MADWIFI_BASE wlanmode $MODE "$IF_MADWIFI_OPTIONS" >$TO_NULL
81 else
82         $WLANCONFIG $VAP create wlandev $IF_MADWIFI_BASE wlanmode $MODE >$TO_NULL
83 fi
84
85 exit $?