home · contact · privacy
986343a6f29b2e5cb189158a6bcd5656cbe56bb2
[config] / bin / wicd-wrapper.sh
1 #!/bin/sh
2
3 check_wifi_id_set() {
4   if ! echo "${1}" | egrep -q '^[0-9]+$'; then
5     echo 'Wifi identifier must be integer.'
6     exit 1
7   fi
8 }
9
10 print_usage() {
11   echo 'Available commands:'
12   echo '  eth_connect'
13   echo '  eth_disconnect'
14   echo '  wifi_scan'
15   echo '  wifi_info WIFI_ID'
16   echo '  wifi_set_wpa WIFI_ID KEY'
17   echo '  wifi_connect WIFI_ID'
18   echo '  wifi_disconnect'
19 }
20
21 if ! echo "${1}"; then
22   echo 'No command given.'
23   print_usage
24   exit 1
25 elif [ "${1}" = 'eth_connect' ]; then
26   wicd-cli --wired --connect
27
28 elif [ "${1}" = 'eth_disconnect' ]; then
29   wicd-cli --wired --disconnect
30
31 elif [ "${1}" = 'wifi_scan' ]; then
32   wicd-cli --wireless --scan
33   wicd-cli --wireless --list-networks
34
35 elif [ "${1}" = 'wifi_info' ]; then
36   check_wifi_id_set "${2}"
37   wicd-cli --wireless --network="${2}" --network-details
38
39 elif [ "${1}" = 'wifi_set_wpa' ]; then
40   check_wifi_id_set "${2}"
41   if ! echo "${3}" ; then
42     echo 'No key set.'
43     exit 1
44   fi
45   wicd-cli --wireless --network="${2}" --network-property=enctype --set-to=wpa
46   wicd-cli --wireless --network="${2}" --network-property=key --set-to="${3}"
47
48 elif [ "${1}" = 'wifi_connect' ]; then
49   check_wifi_id_set "${2}"
50   wicd-cli --wireless --network="${2}" --connect
51
52 elif [ "${1}" = 'wifi_disconnect' ]; then
53   wicd-cli --wireless --disconnect
54
55 else
56   echo 'Unknown command.'
57   print_usage
58   exit 1
59 fi