From 4a41439c46022840555c3c16c30324b5760c07e2 Mon Sep 17 00:00:00 2001 From: Mike Baker Date: Thu, 10 May 2007 14:37:47 +0000 Subject: unified preinit environment SVN-Revision: 7173 --- package/base-files/files/etc/diag.sh | 5 +++++ package/base-files/files/etc/init.d/done | 15 +++++++++++++++ package/base-files/files/etc/preinit | 14 ++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 package/base-files/files/etc/diag.sh create mode 100755 package/base-files/files/etc/init.d/done (limited to 'package/base-files/files/etc') diff --git a/package/base-files/files/etc/diag.sh b/package/base-files/files/etc/diag.sh new file mode 100644 index 0000000000..7ecb7330ff --- /dev/null +++ b/package/base-files/files/etc/diag.sh @@ -0,0 +1,5 @@ +#!/bin/sh +# Copyright (C) 2006 OpenWrt.org + +set_state() { +} diff --git a/package/base-files/files/etc/init.d/done b/package/base-files/files/etc/init.d/done new file mode 100755 index 0000000000..0640b61938 --- /dev/null +++ b/package/base-files/files/etc/init.d/done @@ -0,0 +1,15 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006 OpenWrt.org + +START=95 +boot() { + [ -d /tmp/root ] && { + lock /tmp/.switch2jffs + firstboot switch2jffs + lock -u /tmp/.switch2jffs + } + + # set leds to normal state + . /etc/diag.sh + set_state done +} diff --git a/package/base-files/files/etc/preinit b/package/base-files/files/etc/preinit index c60a0f850f..b23508f552 100755 --- a/package/base-files/files/etc/preinit +++ b/package/base-files/files/etc/preinit @@ -1,6 +1,20 @@ #!/bin/sh # Copyright (C) 2006 OpenWrt.org export PATH=/bin:/sbin:/usr/bin:/usr/sbin +. /etc/diag.sh + +failsafe() { + lock /tmp/.failsafe + ash --login +} + [ -e /etc/preinit.arch ] && . /etc/preinit.arch + +set_state preinit + mount_root ${FAILSAFE:+failsafe} + +eval ${FAILSAFE:+failsafe} +lock -w /tmp/.failsafe + exec /sbin/init -- cgit v1.2.3