prevent zombies from occuring when stdou/stdout are held open
[openwrt.git] / openwrt / target / default / target_skeleton / bin / login
index 238e971..bb065e5 100755 (executable)
@@ -1,21 +1,20 @@
 #!/bin/sh
-[ "$FAILSAFE" = "true" ] && exec /bin/ash --login
-
-[ -f /etc/sysconf ] && . /etc/sysconf
-
-if [ "$BR2_SYSCONF_TELNET_FAILSAFE_ONLY" = "y" ]; then
-        if grep '^root:!' /etc/passwd > /dev/null 2>/dev/null; then
-                echo "You need to set a login password to protect your"
-                echo "Router from unauthorized access."
-                echo
-                echo "Use 'passwd' to set your password."
-                echo "telnet login will be disabled afterwards,"
-                echo "You can then login using SSH."
-                echo
-        else
-                echo "Login failed."
-                exit 0
-        fi
-fi
+. /etc/sysconf 2>&-
 
+[ "$FAILSAFE" != "true" ] &&
+[ "$BR2_SYSCONF_TELNET_FAILSAFE_ONLY" = "y" ] &&
+{
+  grep '^root:[^!]' /etc/passwd >&- 2>&- &&
+  {
+    echo "Login failed."
+    exit 0
+  } || {
+cat << EOF
+ === IMPORTANT ============================
+  Use 'passwd' to set your login password
+  this will disable telnet and enable SSH
+ ------------------------------------------
+EOF
+  }
+}
 exec /bin/ash --login
This page took 0.027651 seconds and 4 git commands to generate.