From 114b9a8fb6f2678ff3876cbba012ad5c5078ce8c Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 4 Jul 2007 04:35:44 +0000 Subject: [PATCH] add failsafe support for atheros-2.6 (#1501) - only works with ar5315+ at the moment SVN-Revision: 7870 --- package/base-files/files/etc/preinit | 9 +++++++++ .../atheros-2.6/base-files/default/etc/preinit.arch | 8 ++++++++ .../linux/brcm-2.4/base-files/default/etc/preinit.arch | 4 ---- 3 files changed, 17 insertions(+), 4 deletions(-) create mode 100755 target/linux/atheros-2.6/base-files/default/etc/preinit.arch diff --git a/package/base-files/files/etc/preinit b/package/base-files/files/etc/preinit index 8163f79ae6..c11732f7a7 100755 --- a/package/base-files/files/etc/preinit +++ b/package/base-files/files/etc/preinit @@ -3,7 +3,16 @@ export PATH=/bin:/sbin:/usr/bin:/usr/sbin . /etc/diag.sh +failsafe_ip() { + ifconfig $ifname 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 up +} + failsafe() { + [ -n "$ifname" ] && grep "$ifname" /proc/net/dev >/dev/null && { + failsafe_ip + netmsg 192.168.1.255 "Entering Failsafe!" + telnetd -l /bin/login <> /dev/null 2>&1 + } lock /tmp/.failsafe ash --login } diff --git a/target/linux/atheros-2.6/base-files/default/etc/preinit.arch b/target/linux/atheros-2.6/base-files/default/etc/preinit.arch new file mode 100755 index 0000000000..7e911ab2ad --- /dev/null +++ b/target/linux/atheros-2.6/base-files/default/etc/preinit.arch @@ -0,0 +1,8 @@ +# reset button only supported on ar5315+ at the moment +grep 'Atheros AR231[567]' /proc/cpuinfo > /dev/null && { + ifname=eth0 + failsafe_ip + netmsg 192.168.1.255 "Press reset now, to enter Failsafe!" + ifconfig "$ifname" 0.0.0.0 down + sleep 2 +} diff --git a/target/linux/brcm-2.4/base-files/default/etc/preinit.arch b/target/linux/brcm-2.4/base-files/default/etc/preinit.arch index a0d97c68bc..43df591ab7 100755 --- a/target/linux/brcm-2.4/base-files/default/etc/preinit.arch +++ b/target/linux/brcm-2.4/base-files/default/etc/preinit.arch @@ -1,9 +1,5 @@ . /etc/functions.sh -failsafe_ip() { - ifconfig $ifname 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 up -} - failsafe() { lock /tmp/.failsafe failsafe_ip -- 2.25.1