浏览代码

Terminale wpa_supplicant before restart of wifi

Bob Mottram 8 年前
父节点
当前提交
5c182edb23
共有 2 个文件被更改,包括 19 次插入14 次删除
  1. 4
    1
      src/freedombone-utils-wifi
  2. 15
    13
      src/freedombone-wifi

+ 4
- 1
src/freedombone-utils-wifi 查看文件

70
     cd $curr_dir
70
     cd $curr_dir
71
     update_wifi_adaptors
71
     update_wifi_adaptors
72
     if [ $IFACE ]; then
72
     if [ $IFACE ]; then
73
+        wpa_cli -i ${IFACE} terminate
73
         ifdown --force $IFACE
74
         ifdown --force $IFACE
74
         ifup $IFACE
75
         ifup $IFACE
75
     fi
76
     fi
208
     fi
209
     fi
209
 
210
 
210
     systemctl restart network-manager
211
     systemctl restart network-manager
211
-    ifdown --force $WIFI_INTERFACE
212
+    wpa_cli -i ${WIFI_INTERFACE} terminate
213
+    ifdown --force ${WIFI_INTERFACE}
212
 }
214
 }
213
 
215
 
214
 function hotspot_on {
216
 function hotspot_on {
494
         echo '# Include files from /etc/network/interfaces.d:' >> /etc/network/interfaces
496
         echo '# Include files from /etc/network/interfaces.d:' >> /etc/network/interfaces
495
         echo 'source-directory /etc/network/interfaces.d' >> /etc/network/interfaces
497
         echo 'source-directory /etc/network/interfaces.d' >> /etc/network/interfaces
496
         systemctl restart network-manager
498
         systemctl restart network-manager
499
+        wpa_cli -i ${WIFI_INTERFACE} terminate
497
         ifdown --force ${WIFI_INTERFACE}
500
         ifdown --force ${WIFI_INTERFACE}
498
     else
501
     else
499
         networks_from_file
502
         networks_from_file

+ 15
- 13
src/freedombone-wifi 查看文件

85
             WIFI_INTERFACE=${1}
85
             WIFI_INTERFACE=${1}
86
             wifi_interface_specified=1
86
             wifi_interface_specified=1
87
             write_config_param "WIFI_INTERFACE" "$WIFI_INTERFACE"
87
             write_config_param "WIFI_INTERFACE" "$WIFI_INTERFACE"
88
-            ifdown --force $WIFI_INTERFACE
89
-            ifup $WIFI_INTERFACE
88
+            wpa_cli -i ${WIFI_INTERFACE} terminate
89
+            ifdown --force ${WIFI_INTERFACE}
90
+            ifup ${WIFI_INTERFACE}
90
             ;;
91
             ;;
91
         -t|--type)
92
         -t|--type)
92
             shift
93
             shift
129
     shift
130
     shift
130
 done
131
 done
131
 
132
 
132
-if [ $NETWORKS_INTERACTIVE ]; then
133
+if [ ${NETWORKS_INTERACTIVE} ]; then
133
     create_networks_interactive
134
     create_networks_interactive
134
     exit 0
135
     exit 0
135
 fi
136
 fi
136
 
137
 
137
-if [ ! $wifi_interface_specified ]; then
138
+if [ ! ${wifi_interface_specified} ]; then
138
     update_wifi_adaptors
139
     update_wifi_adaptors
139
     if [ ! $IFACE ]; then
140
     if [ ! $IFACE ]; then
140
         echo $'No wifi adaptors were found'
141
         echo $'No wifi adaptors were found'
141
         exit 872356
142
         exit 872356
142
     fi
143
     fi
143
-    WIFI_INTERFACE=$IFACE
144
+    WIFI_INTERFACE=${IFACE}
144
     echo "Adaptor: $WIFI_INTERFACE"
145
     echo "Adaptor: $WIFI_INTERFACE"
145
     write_config_param "WIFI_INTERFACE" "$WIFI_INTERFACE"
146
     write_config_param "WIFI_INTERFACE" "$WIFI_INTERFACE"
146
-    ifdown --force $WIFI_INTERFACE
147
-    ifup $WIFI_INTERFACE
147
+    wpa_cli -i ${WIFI_INTERFACE} terminate
148
+    ifdown --force ${WIFI_INTERFACE}
149
+    ifup ${WIFI_INTERFACE}
148
 fi
150
 fi
149
 
151
 
150
-if [ $WIFI_DISABLE ]; then
151
-    disable_wifi $WIFI_DISABLE
152
+if [ ${WIFI_DISABLE} ]; then
153
+    disable_wifi ${WIFI_DISABLE}
152
     remove_config_param "WIFI_INTERFACE"
154
     remove_config_param "WIFI_INTERFACE"
153
     exit 0
155
     exit 0
154
 fi
156
 fi
155
 
157
 
156
-if [ -f $WIFI_NETWORKS_FILE ]; then
158
+if [ -f ${WIFI_NETWORKS_FILE} ]; then
157
     networks_from_file
159
     networks_from_file
158
     exit 0
160
     exit 0
159
 fi
161
 fi
160
 
162
 
161
-if [ ! $WIFI_SSID ]; then
163
+if [ ! ${WIFI_SSID} ]; then
162
     echo $'No SSID given'
164
     echo $'No SSID given'
163
     exit 1
165
     exit 1
164
 fi
166
 fi
165
 
167
 
166
-if [[ $WIFI_HOTSPOT != 'no' ]]; then
168
+if [[ ${WIFI_HOTSPOT} != 'no' ]]; then
167
     hotspot_on
169
     hotspot_on
168
     exit 0
170
     exit 0
169
 else
171
 else
177
     fi
179
     fi
178
 fi
180
 fi
179
 
181
 
180
-if [[ $WIFI_TYPE == 'wpa2-psk' ]]; then
182
+if [[ ${WIFI_TYPE} == 'wpa2-psk' ]]; then
181
     if [ ! -d /etc/wpa_supplicant ]; then
183
     if [ ! -d /etc/wpa_supplicant ]; then
182
         echo $'wpasupplicant package is not installed'
184
         echo $'wpasupplicant package is not installed'
183
         exit 3
185
         exit 3