base-files: fix some failsafe issues
[openwrt/openwrt.git] / package / base-files / files / lib / preinit / 99_10_failsafe_login
1 #!/bin/sh
2 # Copyright (C) 2006-2015 OpenWrt.org
3 # Copyright (C) 2010 Vertical Communications
4
5 failsafe_netlogin () {
6 dropbearkey -t rsa -s 1024 -f /tmp/dropbear_failsafe_host_key
7 dropbear -r /tmp/dropbear_failsafe_host_key <> /dev/null 2>&1
8 }
9
10 failsafe_shell() {
11 lock /tmp/.failsafe
12 ash --login
13 echo "Please reboot system when done with failsafe network logins"
14 while true; do sleep 1; done
15 }
16
17 boot_hook_add failsafe failsafe_netlogin
18 boot_hook_add failsafe failsafe_shell