]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Fixed connectd to exit if dial on demand is used
authorManiacikarus <maniacikarus@ipfire.org>
Tue, 26 Aug 2008 18:43:51 +0000 (20:43 +0200)
committerManiacikarus <maniacikarus@ipfire.org>
Tue, 26 Aug 2008 18:43:51 +0000 (20:43 +0200)
config/rootfiles/core/17/files
src/initscripts/init.d/connectd

index bed4f1c2874e631b6b67fae47e81cb9cb070b98e..262e002edb6ac667f9543fcd10b1ede4d1529ab0 100644 (file)
@@ -1,3 +1,4 @@
 etc/squid
+etc/init.d/connectd
 usr/lib/squid
 usr/sbin/squid
index 37e7cf931b4dc0bffe02cf076d661529d2a6c51e..990028a45defc8c9324d6da12df2cc301106ba27 100644 (file)
-#!/bin/bash
-#
-
-. /etc/sysconfig/rc 
-. ${rc_functions}
-
-# Stop if nothing is configured
-if [ ! -s "/var/ipfire/ppp/settings" ];then
- exit 0
-fi
-
-eval $(/usr/local/bin/readhash /var/ipfire/ppp/settings)
-
-MAX=160
-ATTEMPTS=0
-COUNT=0
-if [ ! $HOLDOFF ]; then
-       HOLDOFF=30
-fi
-
-msg_log () {
-       logger -t $(basename $0)[$$] $*
-}
-
-msg_log "Connectd ($1) started with PID $$"
-
-
-if [ -s "/var/ipfire/red/keepconnected" ]; then
-       ATTEMPTS=$(cat /var/ipfire/red/keepconnected)
-else
-       echo "0" > /var/ipfire/red/keepconnected
-fi
-
-case "$1" in
-  start)
-       boot_mesg "Starting connection daemon..."
-       echo_ok
-               
-               while [ "$COUNT" -lt "$MAX" ]; do
-                       if [ ! -e "/var/ipfire/red/keepconnected" ]; then
-                               # User pressed disconnect in gui
-                               msg_log "Stopping by user request. Exiting."
-                               /etc/rc.d/init.d/network stop red
-                               exit 0
-                       fi
-                       if [ -e "/var/ipfire/red/active" ]; then
-                               # Successfully connected in time
-                               echo "0" > /var/ipfire/red/keepconnected
-                               msg_log "System is online. Exiting."; exit 0
-                       fi
-                       if ( ! ps ax | grep -q [p]ppd ); then
-                               msg_log "No pppd is running. Trying reconnect."
-                               break # because pppd died
-                       fi
-                       sleep 5
-                       (( COUNT+=1 ))
-               done
-               
-               /etc/rc.d/init.d/network stop red
-               
-               (( ATTEMPTS+=1 ))
-               msg_log "Reconnecting: Attempt ${ATTEMPTS} of ${MAXRETRIES}"
-               if [ "${ATTEMPTS}" -ge "${MAXRETRIES}" ]; then
-                       echo "0" > /var/ipfire/red/keepconnected
-                       if [ "$BACKUPPROFILE" != '' ]; then
-                               rm -f /var/ipfire/ppp/settings
-                               cp "/var/ipfire/ppp/settings-${BACKUPPROFILE}" /var/ipfire/ppp/settings
-                               msg_log "Switched to backup profile ${BACKUPPROFILE}"
-                               # to be shure the right secrets are used
-        eval $(/usr/local/bin/readhash /var/ipfire/ppp/settings-${BACKUPPROFILE})
-        echo "'$USERNAME' * '$PASSWORD'" > /var/ipfire/ppp/secrets
-                       else
-                               msg_log "No backup profile given. Exiting."
-                               exit 0
-                       fi
-               else
-                       echo $ATTEMPTS > /var/ipfire/red/keepconnected
-                       sleep ${HOLDOFF}
-               fi
-               
-               /etc/rc.d/init.d/network start red >/dev/tty12 2>&1 </dev/tty12 &
-               ;;
-               
-  reconnect)
-               while ( ps ax | grep -q [p]ppd ); do
-                       msg_log "There is a pppd still running. Waiting 2 seconds for exit."
-                       sleep 2
-               done
-               
-               /etc/rc.d/init.d/network restart red
-               ;;
-               
-  *)
-               echo "Usage: $0 {start|reconnect}"
-               exit 1
-       ;;
-esac
-
-msg_log "Exiting gracefully connectd with PID $$."
+#!/bin/bash\r
+#\r
+\r
+. /etc/sysconfig/rc \r
+. ${rc_functions}\r
+\r
+# Stop if nothing is configured\r
+if [ ! -s "/var/ipfire/ppp/settings" ];then\r
+ exit 0\r
+fi\r
+\r
+eval $(/usr/local/bin/readhash /var/ipfire/ppp/settings)\r
+\r
+MAX=160\r
+ATTEMPTS=0\r
+COUNT=0\r
+if [ ! $HOLDOFF ]; then\r
+       HOLDOFF=30\r
+fi\r
+\r
+if [ "$RECONNECTION" = "dialondemand" ]; then\r
+       exit 0\r
+fi\r
+\r
+msg_log () {\r
+       logger -t $(basename $0)[$$] $*\r
+}\r
+\r
+msg_log "Connectd ($1) started with PID $$"\r
+\r
+\r
+if [ -s "/var/ipfire/red/keepconnected" ]; then\r
+       ATTEMPTS=$(cat /var/ipfire/red/keepconnected)\r
+else\r
+       echo "0" > /var/ipfire/red/keepconnected\r
+fi\r
+\r
+case "$1" in\r
+  start)\r
+       boot_mesg "Starting connection daemon..."\r
+       echo_ok\r
+               \r
+               while [ "$COUNT" -lt "$MAX" ]; do\r
+                       if [ ! -e "/var/ipfire/red/keepconnected" ]; then\r
+                               # User pressed disconnect in gui\r
+                               msg_log "Stopping by user request. Exiting."\r
+                               /etc/rc.d/init.d/network stop red\r
+                               exit 0\r
+                       fi\r
+                       if [ -e "/var/ipfire/red/active" ]; then\r
+                               # Successfully connected in time\r
+                               echo "0" > /var/ipfire/red/keepconnected\r
+                               msg_log "System is online. Exiting."; exit 0\r
+                       fi\r
+                       if ( ! ps ax | grep -q [p]ppd ); then\r
+                               msg_log "No pppd is running. Trying reconnect."\r
+                               break # because pppd died\r
+                       fi\r
+                       sleep 5\r
+                       (( COUNT+=1 ))\r
+               done\r
+               \r
+               /etc/rc.d/init.d/network stop red\r
+               \r
+               (( ATTEMPTS+=1 ))\r
+               msg_log "Reconnecting: Attempt ${ATTEMPTS} of ${MAXRETRIES}"\r
+               if [ "${ATTEMPTS}" -ge "${MAXRETRIES}" ]; then\r
+                       echo "0" > /var/ipfire/red/keepconnected\r
+                       if [ "$BACKUPPROFILE" != '' ]; then\r
+                               rm -f /var/ipfire/ppp/settings\r
+                               cp "/var/ipfire/ppp/settings-${BACKUPPROFILE}" /var/ipfire/ppp/settings\r
+                               msg_log "Switched to backup profile ${BACKUPPROFILE}"\r
+                               # to be shure the right secrets are used\r
+        eval $(/usr/local/bin/readhash /var/ipfire/ppp/settings-${BACKUPPROFILE})\r
+        echo "'$USERNAME' * '$PASSWORD'" > /var/ipfire/ppp/secrets\r
+                       else\r
+                               msg_log "No backup profile given. Exiting."\r
+                               exit 0\r
+                       fi\r
+               else\r
+                       echo $ATTEMPTS > /var/ipfire/red/keepconnected\r
+                       sleep ${HOLDOFF}\r
+               fi\r
+               \r
+               /etc/rc.d/init.d/network start red &\r
+               ;;\r
+               \r
+  reconnect)\r
+               while ( ps ax | grep -q [p]ppd ); do\r
+                       msg_log "There is a pppd still running. Waiting 2 seconds for exit."\r
+                       sleep 2\r
+               done\r
+               \r
+               /etc/rc.d/init.d/network restart red\r
+               ;;\r
+               \r
+  *)\r
+               echo "Usage: $0 {start|reconnect}"\r
+               exit 1\r
+       ;;\r
+esac\r
+\r
+msg_log "Exiting gracefully connectd with PID $$."\r