summaryrefslogtreecommitdiffstats
path: root/src/etc/rc.initial
diff options
context:
space:
mode:
Diffstat (limited to 'src/etc/rc.initial')
-rwxr-xr-xsrc/etc/rc.initial167
1 files changed, 167 insertions, 0 deletions
diff --git a/src/etc/rc.initial b/src/etc/rc.initial
new file mode 100755
index 0000000..b103bf7
--- /dev/null
+++ b/src/etc/rc.initial
@@ -0,0 +1,167 @@
+#!/bin/sh
+
+# /etc/rc.initial
+# part of pfSense by Scott Ullrich
+# Copyright (C) 2004-2011 Scott Ullrich, All rights reserved.
+# originally based on m0n0wall (http://neon1.net/m0n0wall)
+# Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
+# All rights reserved.
+
+# make sure the user can't kill us by pressing Ctrl-C,
+# ctrl-z, etc.
+#trap : 2
+#trap : 3
+#trap : 4
+
+if [ -f /etc/rc.local ]; then
+ RCLOCALPWD=`ps awux | grep rc.local | grep -v grep | awk '{ print $2 }'`
+ if [ "$RCLOCALPWD" = "" ]; then
+ echo ">>> Launching rc.local in background..."
+ sh /etc/rc.local &
+ sleep 1
+ sh /etc/rc.local.running &
+ else
+ if [ -f /etc/rc.local.running ]; then
+ echo ">>> Launching rc.local.running in background..."
+ sh /etc/rc.local.running &
+ fi
+ fi
+fi
+
+CONFIG="/cf/conf/config.xml"
+WORD="https"
+
+# Set our operating platform
+PLATFORM=`cat /etc/platform`
+
+# endless loop
+while : ; do
+
+if [ -f /tmp/ttybug ]; then
+ rm /tmp/ttybug
+ exit && exit && logout
+fi
+
+/etc/rc.banner
+
+product=`grep product_name /etc/inc/globals.inc | cut -d'"' -f4`
+hidebanner=`grep hidebanner /etc/inc/globals.inc | cut -d'"' -f4`
+
+# Check to see if SSH is running.
+if pgrep -q -a -F /var/run/sshd.pid sshd >/dev/null 2>&1; then
+ sshd_option="14) Disable Secure Shell (sshd)";
+else
+ sshd_option="14) Enable Secure Shell (sshd)";
+fi
+
+for i in /var/db/pfi/capable_*; do
+ if [ -f $i -a ! -L /cf/conf ]; then
+ option98="98) Move configuration file to removable device"
+ break
+ fi
+done
+
+if [ "$PLATFORM" = "cdrom" ]; then
+ option99="99) Install ${product} to a hard drive, etc."
+fi
+
+# display a cheap menu
+echo ""
+echo " 0) Logout (SSH only) 9) pfTop"
+echo " 1) Assign Interfaces 10) Filter Logs"
+echo " 2) Set interface(s) IP address 11) Restart webConfigurator"
+echo " 3) Reset webConfigurator password 12) ${product} Developer Shell"
+echo " 4) Reset to factory defaults 13) Upgrade from console"
+echo " 5) Reboot system ${sshd_option}"
+echo " 6) Halt system 15) Restore recent configuration"
+echo " 7) Ping host 16) Restart PHP-FPM"
+echo " 8) Shell"
+echo " ${option98} "
+
+if [ "${option99}" != "" ]; then
+ /bin/echo "${option99}"
+fi
+
+echo
+read -p "Enter an option: " opmode
+echo
+
+# see what the user has chosen
+case ${opmode} in
+0)
+ exit && exit && logout
+ ;;
+1)
+ /etc/rc.initial.setports
+ ;;
+2)
+ /etc/rc.initial.setlanip
+ ;;
+3)
+ /etc/rc.initial.password
+ ;;
+4)
+ /etc/rc.initial.defaults
+ ;;
+5)
+ /etc/rc.initial.reboot
+ ;;
+6)
+ /etc/rc.initial.halt
+ ;;
+7)
+ /etc/rc.initial.ping
+ ;;
+8)
+ /bin/tcsh
+ ;;
+9)
+ /usr/local/sbin/pftop
+ ;;
+10)
+ /usr/local/sbin/clog -f /var/log/filter.log
+ ;;
+11 | 111)
+ /etc/rc.restart_webgui
+ ;;
+12)
+ /usr/local/sbin/pfSsh.php
+ ;;
+13)
+ php -f /etc/rc.initial.firmware_update
+ ;;
+14)
+ php -f /etc/rc.initial.toggle_sshd
+ ;;
+15)
+ /etc/rc.restore_config_backup
+ ;;
+16)
+ /etc/rc.php-fpm_restart
+ ;;
+98)
+ if [ ! -f /tmp/config_moved ]; then
+ /etc/rc.initial.store_config_to_removable_device
+ fi
+ ;;
+99)
+ if [ -e /dev/ukbd0 ]; then
+ env TERM=cons25 /scripts/lua_installer
+ else
+ /scripts/lua_installer
+ fi
+ ;;
+100)
+ if grep "$WORD" "$CONFIG"; then
+ links "https://localhost"
+ else
+ links "http://localhost"
+ fi
+ ;;
+"")
+ kill $PPID ; exit
+ ;;
+esac
+
+done
+
OpenPOWER on IntegriCloud