aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ppp-watch.c5
-rw-r--r--sysconfig.txt6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/ppp-watch.c b/src/ppp-watch.c
index be241fef..a264dd90 100644
--- a/src/ppp-watch.c
+++ b/src/ppp-watch.c
@@ -617,6 +617,11 @@ main(int argc, char **argv) {
break;
}
+ /* We default to retrying the connect phase for backward compatibility. */
+ if ((WEXITSTATUS(status) == 8) && !svTrueValue(ifcfg, "RETRYCONNECT", 1)) {
+ cleanExit(WEXITSTATUS(status));
+ }
+
if ((WEXITSTATUS(status) == 8) ||
!connectedOnce || svTrueValue(ifcfg, "PERSIST", 0)) {
temp = svGetValue(ifcfg, "RETRYTIMEOUT");
diff --git a/sysconfig.txt b/sysconfig.txt
index 07fc0ed2..8460fc26 100644
--- a/sysconfig.txt
+++ b/sysconfig.txt
@@ -429,6 +429,12 @@ Files in /etc/sysconfig/network-scripts/
RETRYTIMEOUT=<number of seconds, default currently 60>
(time to wait before re-attempting to establish a connection
after a previous attempt fails.)
+ RETRYCONNECT=yes|no (defaults to yes)
+ If this is yes, then we will re-run pppd if it exits with a
+ "connect script failed" status. Otherwise, only one attempt
+ is made to bring up the connection. Note that some connect
+ scripts (for example, wvdial) might do their own retries (such
+ as BUSY or NO DIALTONE conditions).
/etc/sysconfig/network-scripts/chat-<interface-name>: