mirror of
https://github.com/gtxaspec/wz_mini_hacks.git
synced 2025-05-11 08:01:08 +00:00
Add wpa_supplicant daemon that works properly for the wlanold interface.
With this addition, the bonding now works correctly. Ethernet is used when available/connected, and will fallback to Wifi when not. As soon as Ethernet does become available again, the bonding will switch to it as priority.
This commit is contained in:
parent
2736fc299d
commit
9d78ea2ea6
@ -64,43 +64,49 @@ rename_interface() {
|
|||||||
##Fool iCamera by renaming the hardline interface to wlan0
|
##Fool iCamera by renaming the hardline interface to wlan0
|
||||||
echo "renaming interfaces"
|
echo "renaming interfaces"
|
||||||
|
|
||||||
# Bring all interfaces down
|
# Bring all interfaces down
|
||||||
ifconfig $1 down
|
ifconfig $1 down
|
||||||
ifconfig wlan0 down
|
ifconfig wlan0 down
|
||||||
ifconfig bond0 down
|
ifconfig bond0 down
|
||||||
|
|
||||||
# Rename the real wlan0 interface
|
# Rename the real wlan0 interface
|
||||||
/opt/wz_mini/bin/busybox ip link set wlan0 name wlanold
|
/opt/wz_mini/bin/busybox ip link set wlan0 name wlanold
|
||||||
/opt/wz_mini/bin/busybox ip addr flush dev wlanold
|
/opt/wz_mini/bin/busybox ip addr flush dev wlanold
|
||||||
|
|
||||||
# Have to bring bond0 up to be able to bond our slaves.
|
# Have to bring bond0 up to be able to bond our slaves.
|
||||||
/opt/wz_mini/bin/busybox ip link set bond0 up
|
/opt/wz_mini/bin/busybox ip link set bond0 up
|
||||||
|
|
||||||
# Enslave the Ethernet and Original Wifi interfaces
|
# Enslave the Ethernet and Original Wifi interfaces
|
||||||
# under the Bonding interface.
|
# under the Bonding interface.
|
||||||
/opt/wz_mini/tmp/.bin/ifenslave bond0 eth0 wlanold
|
/opt/wz_mini/tmp/.bin/ifenslave bond0 eth0 wlanold
|
||||||
|
|
||||||
# Have to bring bond0 down to be rename the interface
|
# Have to bring bond0 down to be rename the interface
|
||||||
/opt/wz_mini/bin/busybox ip link set bond0 down
|
/opt/wz_mini/bin/busybox ip link set bond0 down
|
||||||
|
|
||||||
# Name the bond0 interface to be the "new" wlan0 interface
|
# Name the bond0 interface to be the "new" wlan0 interface
|
||||||
/opt/wz_mini/bin/busybox ip link set bond0 name wlan0
|
/opt/wz_mini/bin/busybox ip link set bond0 name wlan0
|
||||||
|
|
||||||
# Bring the newly renamed wlan0 back up
|
# Bring the newly renamed wlan0 back up
|
||||||
eth_wlan_up
|
eth_wlan_up
|
||||||
}
|
}
|
||||||
|
|
||||||
eth_wlan_up() {
|
eth_wlan_up() {
|
||||||
##Run DHCP client, and bind mount our fake wpa_cli.sh to fool iCamera
|
##Run DHCP client, and bind mount our fake wpa_cli.sh to fool iCamera
|
||||||
ifconfig wlan0 up
|
ifconfig wlan0 up
|
||||||
|
|
||||||
pkill udhcpc
|
pkill udhcpc
|
||||||
udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
|
udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
|
||||||
|
|
||||||
|
# Kill any existing wpa_supplicant that might be running
|
||||||
|
# and spawn our own instead
|
||||||
|
/opt/wz_mini/bin/busybox killall wpa_supplicant
|
||||||
|
wpa_supplicant -D nl80211 -i wlanold -c /tmp/wpa_supplicant.conf -B -s
|
||||||
|
|
||||||
if [[ "$V2" == "true" ]]; then
|
if [[ "$V2" == "true" ]]; then
|
||||||
mount -o bind /opt/wz_mini/bin/wpa_cli.sh /system/bin/wpa_cli
|
mount -o bind /opt/wz_mini/bin/wpa_cli.sh /system/bin/wpa_cli
|
||||||
else
|
else
|
||||||
mount -o bind /opt/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
|
mount -o bind /opt/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
|
||||||
fi
|
fi
|
||||||
|
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -244,8 +250,8 @@ if [[ "$ENABLE_USB_ETH" == "true" ]]; then
|
|||||||
insmod $KMOD_PATH/kernel/drivers/net/usb/$i.ko
|
insmod $KMOD_PATH/kernel/drivers/net/usb/$i.ko
|
||||||
done
|
done
|
||||||
|
|
||||||
# Insert the bonding driver when running Ethernet
|
# Insert the bonding driver when running Ethernet
|
||||||
insmod $KMOD_PATH/kernel/drivers/net/bonding.ko mode=active-backup miimon=100 downdelay=5000 updelay=5000 primary=eth0
|
insmod $KMOD_PATH/kernel/drivers/net/bonding/bonding.ko mode=active-backup miimon=100 downdelay=5000 updelay=5000 primary=eth0
|
||||||
|
|
||||||
swap_enable
|
swap_enable
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user