summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usr.sbin/ppp/chap.c3
-rw-r--r--usr.sbin/ppp/command.c8
-rw-r--r--usr.sbin/ppp/ip.c4
-rw-r--r--usr.sbin/ppp/ipcp.c3
-rw-r--r--usr.sbin/ppp/lcp.c15
-rw-r--r--usr.sbin/ppp/lqr.c4
-rw-r--r--usr.sbin/ppp/main.c121
-rw-r--r--usr.sbin/ppp/modem.c29
-rw-r--r--usr.sbin/ppp/os.c11
-rw-r--r--usr.sbin/ppp/pap.c4
-rw-r--r--usr.sbin/ppp/ppp.85
-rw-r--r--usr.sbin/ppp/ppp.8.m45
-rw-r--r--usr.sbin/ppp/vars.h8
13 files changed, 125 insertions, 95 deletions
diff --git a/usr.sbin/ppp/chap.c b/usr.sbin/ppp/chap.c
index be677f56..6467fb5 100644
--- a/usr.sbin/ppp/chap.c
+++ b/usr.sbin/ppp/chap.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: chap.c,v 1.13 1997/03/24 16:01:42 ache Exp $
+ * $Id: chap.c,v 1.14 1997/05/10 01:22:06 brian Exp $
*
* TODO:
*/
@@ -212,6 +212,7 @@ struct mbuf *bp;
*/
ChapOutput(CHAP_FAILURE, chp->id, "Invalid!!", 9);
LcpClose();
+ reconnectCount = 0;
break;
}
}
diff --git a/usr.sbin/ppp/command.c b/usr.sbin/ppp/command.c
index 4e51046..be5b140 100644
--- a/usr.sbin/ppp/command.c
+++ b/usr.sbin/ppp/command.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: command.c,v 1.45 1997/05/10 23:46:29 ache Exp $
+ * $Id: command.c,v 1.46 1997/05/14 01:18:50 brian Exp $
*
*/
#include <sys/types.h>
@@ -108,6 +108,8 @@ IsInteractive()
if (mode & MODE_DDIAL)
mes = "Working in dedicated dial mode.";
+ else if (mode & MODE_BACKGROUND)
+ mes = "Working in background mode.";
else if (mode & MODE_AUTO)
mes = "Working in auto mode.";
else if (mode & MODE_DIRECT)
@@ -630,7 +632,9 @@ static int
CloseCommand()
{
LcpClose();
- lostCarrier = 0;
+ reconnectCount = 0;
+ if (mode & MODE_BACKGROUND)
+ Cleanup(EX_NORMAL);
return(1);
}
diff --git a/usr.sbin/ppp/ip.c b/usr.sbin/ppp/ip.c
index 3d73275..ee1fb27 100644
--- a/usr.sbin/ppp/ip.c
+++ b/usr.sbin/ppp/ip.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: ip.c,v 1.15 1997/04/21 01:01:45 brian Exp $
+ * $Id: ip.c,v 1.16 1997/05/10 01:22:11 brian Exp $
*
* TODO:
* o Return ICMP message for filterd packet
@@ -45,7 +45,7 @@ static void IdleTimeout()
{
LogPrintf(LOG_PHASE_BIT, "Idle timer expired.\n");
LcpClose();
- lostCarrier = 0;
+ reconnectCount = 0;
}
/*
diff --git a/usr.sbin/ppp/ipcp.c b/usr.sbin/ppp/ipcp.c
index a55a67c..8ef0f49 100644
--- a/usr.sbin/ppp/ipcp.c
+++ b/usr.sbin/ppp/ipcp.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: ipcp.c,v 1.15 1997/05/10 15:37:40 brian Exp $
+ * $Id: ipcp.c,v 1.16 1997/05/10 23:46:29 ache Exp $
*
* TODO:
* o More RFC1772 backwoard compatibility
@@ -245,6 +245,7 @@ struct fsm *fp;
{
LogPrintf(LOG_LCP_BIT, "%s: LayerFinish.\n", fp->name);
LcpClose();
+ reconnectCount = 0;
NewPhase(PHASE_TERMINATE);
}
diff --git a/usr.sbin/ppp/lcp.c b/usr.sbin/ppp/lcp.c
index d3c6d7a..2cfabd7 100644
--- a/usr.sbin/ppp/lcp.c
+++ b/usr.sbin/ppp/lcp.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: lcp.c,v 1.17 1997/05/11 00:41:30 ache Exp $
+ * $Id: lcp.c,v 1.18 1997/05/11 00:44:37 ache Exp $
*
* TODO:
* o Validate magic number received from peer.
@@ -124,18 +124,11 @@ int new;
IpcpOpen();
CcpUp();
CcpOpen();
- if (mode & MODE_BACKGROUND && BGFiledes[1] != -1) {
- char c = EX_NORMAL;
- if (write(BGFiledes[1],&c,1) == 1)
- LogPrintf(LOG_PHASE_BIT,"Parent notified of success.\n");
- else
- LogPrintf(LOG_PHASE_BIT,"Failed to notify parent of success.\n");
- close(BGFiledes[1]);
- BGFiledes[1] = -1;
- }
break;
case PHASE_DEAD:
- if (mode & (MODE_DIRECT|MODE_BACKGROUND))
+ if (mode & MODE_DIRECT)
+ Cleanup(EX_DEAD);
+ if (mode & MODE_BACKGROUND && !reconnectRequired)
Cleanup(EX_DEAD);
break;
}
diff --git a/usr.sbin/ppp/lqr.c b/usr.sbin/ppp/lqr.c
index 5475da8..aafe340 100644
--- a/usr.sbin/ppp/lqr.c
+++ b/usr.sbin/ppp/lqr.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: lqr.c,v 1.10 1997/05/07 23:40:31 brian Exp $
+ * $Id: lqr.c,v 1.11 1997/05/09 16:16:31 jdp Exp $
*
* o LQR based on RFC1333
*
@@ -111,6 +111,7 @@ SendLqrReport()
LogPrintf(LOG_PHASE_BIT, "** 1 Too many ECHO packets are lost. **\n");
lqmmethod = 0; /* Prevent rcursion via LcpClose() */
LcpClose();
+ reconnectRequired = 1;
} else {
bp = mballoc(sizeof(struct lqrdata), MB_LQR);
HdlcOutput(PRI_LINK, PROTO_LQR, bp);
@@ -121,6 +122,7 @@ SendLqrReport()
LogPrintf(LOG_PHASE_BIT, "** 2 Too many ECHO packets are lost. **\n");
lqmmethod = 0; /* Prevent rcursion via LcpClose() */
LcpClose();
+ reconnectRequired = 1;
} else
SendEchoReq();
}
diff --git a/usr.sbin/ppp/main.c b/usr.sbin/ppp/main.c
index c0f1a70..5e74744 100644
--- a/usr.sbin/ppp/main.c
+++ b/usr.sbin/ppp/main.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: main.c,v 1.50 1997/05/14 01:18:51 brian Exp $
+ * $Id: main.c,v 1.51 1997/05/17 16:08:46 brian Exp $
*
* TODO:
* o Add commands for traffic summary, version display, etc.
@@ -69,6 +69,7 @@ extern int aft_cmd;
extern int IsInteractive();
static void DoLoop(void);
static void TerminalStop();
+static char *ex_desc();
static struct termios oldtio; /* Original tty mode */
static struct termios comtio; /* Command level tty mode */
@@ -168,7 +169,7 @@ int excode;
OsLinkdown();
OsCloseLink(1);
sleep(1);
- if (mode & (MODE_AUTO | MODE_BACKGROUND))
+ if (mode & MODE_AUTO)
DeleteIfRoutes(1);
(void)unlink(pid_filename);
(void)unlink(if_filename);
@@ -181,7 +182,7 @@ int excode;
LogPrintf(LOG_PHASE_BIT,"Failed to notify parent of failure.\n");
close(BGFiledes[1]);
}
- LogPrintf(LOG_PHASE_BIT, "PPP Terminated %d.\n",excode);
+ LogPrintf(LOG_PHASE_BIT, "PPP Terminated (%s).\n",ex_desc(excode));
LogClose();
if (server >= 0) {
close(server);
@@ -223,6 +224,7 @@ int signo;
else {
LogPrintf(LOG_PHASE_BIT, "Signal %d, terminate.\n", signo);
LcpClose();
+ reconnectCount = 0;
Cleanup(EX_TERM);
}
}
@@ -245,6 +247,19 @@ int signo;
kill(getpid(), signo);
}
+static char *
+ex_desc(int ex)
+{
+ static char num[12];
+ static char *desc[] = { "normal", "start", "sock",
+ "modem", "dial", "dead", "done", "reboot", "errdead",
+ "hangup", "term", "nodial", "nologin" };
+
+ if (ex >= 0 && ex < sizeof(desc)/sizeof(*desc))
+ return desc[ex];
+ snprintf(num, sizeof num, "%d", ex);
+ return num;
+}
void
Usage()
@@ -266,7 +281,7 @@ ProcessArgs(int argc, char **argv)
if (strcmp(cp, "auto") == 0)
mode |= MODE_AUTO;
else if (strcmp(cp, "background") == 0)
- mode |= MODE_BACKGROUND;
+ mode |= MODE_BACKGROUND|MODE_AUTO;
else if (strcmp(cp, "direct") == 0)
mode |= MODE_DIRECT;
else if (strcmp(cp, "dedicated") == 0)
@@ -339,7 +354,7 @@ char **argv;
exit(EX_START);
}
- if (mode & (MODE_AUTO|MODE_DIRECT|MODE_DEDICATED|MODE_BACKGROUND))
+ if (mode & (MODE_AUTO|MODE_DIRECT|MODE_DEDICATED))
mode &= ~MODE_INTER;
if (mode & MODE_INTER) {
printf("Interactive mode\n");
@@ -347,14 +362,8 @@ char **argv;
} else if (mode & MODE_AUTO) {
printf("Automatic Dialer mode\n");
if (dstsystem == NULL) {
- fprintf(stderr,
- "Destination system must be specified in auto or ddial mode.\n");
- exit(EX_START);
- }
- } else if (mode & MODE_BACKGROUND) {
- printf("Background mode\n");
- if (dstsystem == NULL) {
- fprintf(stderr, "Destination system must be specified in background mode.\n");
+ fprintf(stderr, "Destination system must be specified in"
+ " auto, background or ddial mode.\n");
exit(EX_START);
}
}
@@ -393,7 +402,8 @@ char **argv;
Cleanup(EX_START);
}
if ((mode & MODE_AUTO) && DefHisAddress.ipaddr.s_addr == INADDR_ANY) {
- fprintf(stderr, "Must specify dstaddr with auto or ddial mode.\n");
+ fprintf(stderr, "Must specify dstaddr with"
+ " auto, background or ddial mode.\n");
Cleanup(EX_START);
}
}
@@ -402,33 +412,31 @@ char **argv;
if (!(mode & MODE_INTER)) {
int port = SERVER_PORT + tunno;
+
if (mode & MODE_BACKGROUND) {
if (pipe (BGFiledes)) {
perror("pipe");
Cleanup(EX_SOCK);
}
}
- else {
- /*
- * Create server socket and listen at there.
- */
- server = socket(PF_INET, SOCK_STREAM, 0);
- if (server < 0) {
- perror("socket");
- Cleanup(EX_SOCK);
- }
- ifsin.sin_family = AF_INET;
- ifsin.sin_addr.s_addr = INADDR_ANY;
- ifsin.sin_port = htons(port);
- if (bind(server, (struct sockaddr *) &ifsin, sizeof(ifsin)) < 0) {
- perror("bind");
- if (errno == EADDRINUSE)
- fprintf(stderr, "Wait for a while, then try again.\n");
- Cleanup(EX_SOCK);
- }
- if (listen(server, 5) != 0) {
- fprintf(stderr, "Unable to listen to socket - OS overload?\n");
- }
+
+ /* Create server socket and listen at there. */
+ server = socket(PF_INET, SOCK_STREAM, 0);
+ if (server < 0) {
+ perror("socket");
+ Cleanup(EX_SOCK);
+ }
+ ifsin.sin_family = AF_INET;
+ ifsin.sin_addr.s_addr = INADDR_ANY;
+ ifsin.sin_port = htons(port);
+ if (bind(server, (struct sockaddr *) &ifsin, sizeof(ifsin)) < 0) {
+ perror("bind");
+ if (errno == EADDRINUSE)
+ fprintf(stderr, "Wait for a while, then try again.\n");
+ Cleanup(EX_SOCK);
+ }
+ if (listen(server, 5) != 0) {
+ fprintf(stderr, "Unable to listen to socket - OS overload?\n");
}
DupLog();
@@ -447,12 +455,16 @@ char **argv;
/* Wait for our child to close its pipe before we exit. */
BGPid = bgpid;
close (BGFiledes[1]);
- if (read(BGFiledes[0], &c, 1) != 1)
+ if (read(BGFiledes[0], &c, 1) != 1) {
+ printf("Child exit, no status.\n");
LogPrintf (LOG_PHASE_BIT, "Parent: Child exit, no status.\n");
- else if (c == EX_NORMAL)
+ } else if (c == EX_NORMAL) {
+ printf("PPP enabled.\n");
LogPrintf (LOG_PHASE_BIT, "Parent: PPP enabled.\n");
- else
+ } else {
+ printf("Child failed %d.\n",(int)c);
LogPrintf (LOG_PHASE_BIT, "Parent: Child failed %d.\n",(int)c);
+ }
close (BGFiledes[0]);
}
exit(c);
@@ -728,7 +740,7 @@ DoLoop()
pgroup = getpgrp();
- if (mode & (MODE_DIRECT|MODE_BACKGROUND)) {
+ if (mode & MODE_DIRECT) {
modem = OpenModem(mode);
LogPrintf(LOG_PHASE_BIT, "Packet mode enabled\n");
fflush(stderr);
@@ -742,7 +754,7 @@ DoLoop()
timeout.tv_sec = 0;
timeout.tv_usec = 0;
- lostCarrier = 0;
+ reconnectRequired = 0;
if (mode & MODE_BACKGROUND)
dial_up = TRUE; /* Bring the line up */
@@ -763,19 +775,26 @@ DoLoop()
/*
* If we lost carrier and want to re-establish the connection
* due to the "set reconnect" value, we'd better bring the line
- * back up now.
+ * back up.
*/
- if (LcpFsm.state <= ST_CLOSED && dial_up != TRUE && lostCarrier)
- if (lostCarrier <= VarReconnectTries) {
- LogPrintf(LOG_PHASE_BIT, "Connection lost, re-establish (%d/%d)\n",
- lostCarrier, VarReconnectTries);
- StartRedialTimer(VarReconnectTimer);
- dial_up = TRUE;
- } else {
- LogPrintf(LOG_PHASE_BIT, "Connection lost, maximum (%d) times\n",
- VarReconnectTries);
- lostCarrier = 0;
+ if (LcpFsm.state <= ST_CLOSED) {
+ if (dial_up != TRUE && reconnectRequired) {
+ if (++reconnectCount <= VarReconnectTries) {
+ LogPrintf(LOG_PHASE_BIT, "Connection lost, re-establish (%d/%d)\n",
+ reconnectCount, VarReconnectTries);
+ StartRedialTimer(VarReconnectTimer);
+ dial_up = TRUE;
+ } else {
+ if (VarReconnectTries)
+ LogPrintf(LOG_PHASE_BIT, "Connection lost, maximum (%d) times\n",
+ VarReconnectTries);
+ reconnectCount = 0;
+ if (mode & MODE_BACKGROUND)
+ Cleanup(EX_DEAD);
+ }
}
+ reconnectRequired = 0;
+ }
/*
* If Ip packet for output is enqueued and require dial up,
diff --git a/usr.sbin/ppp/modem.c b/usr.sbin/ppp/modem.c
index 6271efe..f2c4dd0 100644
--- a/usr.sbin/ppp/modem.c
+++ b/usr.sbin/ppp/modem.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: modem.c,v 1.36 1997/05/10 03:39:54 brian Exp $
+ * $Id: modem.c,v 1.37 1997/05/14 01:14:32 brian Exp $
*
* TODO:
*/
@@ -44,7 +44,6 @@
extern int DoChat();
static int mbits; /* Current DCD status */
-static int connect_time; /* connection time */
static int connect_count;
static struct pppTimer ModemTimer;
@@ -217,8 +216,6 @@ DownConnection()
CloseModem();
LcpDown();
}
- lostCarrier++;
- connect_time = 0;
}
/*
@@ -228,28 +225,21 @@ DownConnection()
void
ModemTimeout()
{
- static int waiting;
int ombits = mbits;
int change;
StopTimer(&ModemTimer);
- if (Online)
- connect_time++;
StartTimer(&ModemTimer);
if (dev_is_modem) {
- if (modem < 0) {
- if (!waiting)
+ if (modem >= 0) {
+ if (ioctl(modem, TIOCMGET, &mbits) < 0) {
+ LogPrintf(LOG_PHASE_BIT, "ioctl error (%s)!\n", strerror(errno));
DownConnection();
- waiting = 1;
- return;
- }
- waiting = 0;
- if (ioctl(modem, TIOCMGET, &mbits) < 0) {
- LogPrintf(LOG_PHASE_BIT, "ioctl error (%s)!\n", strerror(errno));
- DownConnection();
- return;
- }
+ return;
+ }
+ } else
+ mbits = 0;
change = ombits ^ mbits;
if (change & TIOCM_CD) {
if (Online) {
@@ -263,6 +253,7 @@ ModemTimeout()
if (mode & MODE_DEDICATED)
PacketMode();
} else {
+ reconnectRequired = 1;
DownConnection();
}
}
@@ -272,7 +263,6 @@ ModemTimeout()
LogPrintf(LOG_PHASE_BIT, "Connected!\n");
mbits = TIOCM_CD;
connect_count++;
- connect_time = 0;
} else if (uptime == 0) {
time(&uptime);
}
@@ -282,7 +272,6 @@ ModemTimeout()
void
StartModemTimer()
{
- connect_time = 0;
StopTimer(&ModemTimer);
ModemTimer.state = TIMER_STOPPED;
ModemTimer.load = SECTICKS;
diff --git a/usr.sbin/ppp/os.c b/usr.sbin/ppp/os.c
index c0ffdb8..2bdab3e 100644
--- a/usr.sbin/ppp/os.c
+++ b/usr.sbin/ppp/os.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: os.c,v 1.15 1997/04/15 00:03:36 brian Exp $
+ * $Id: os.c,v 1.16 1997/05/04 02:39:04 ache Exp $
*
*/
#include "fsm.h"
@@ -186,6 +186,15 @@ OsLinkup()
if (linkup == 0) {
if (setuid(0) < 0)
logprintf("setuid failed\n");
+ if (mode & MODE_BACKGROUND && BGFiledes[1] != -1) {
+ char c = EX_NORMAL;
+ if (write(BGFiledes[1],&c,1) == 1)
+ LogPrintf(LOG_PHASE_BIT,"Parent notified of success.\n");
+ else
+ LogPrintf(LOG_PHASE_BIT,"Failed to notify parent of success.\n");
+ close(BGFiledes[1]);
+ BGFiledes[1] = -1;
+ }
peer_addr = IpcpInfo.his_ipaddr;
s = (char *)inet_ntoa(peer_addr);
LogPrintf(LOG_LINK_BIT|LOG_LCP_BIT, "OsLinkup: %s\n", s);
diff --git a/usr.sbin/ppp/pap.c b/usr.sbin/ppp/pap.c
index de3f54a..db1c9aa 100644
--- a/usr.sbin/ppp/pap.c
+++ b/usr.sbin/ppp/pap.c
@@ -18,7 +18,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id$
+ * $Id: pap.c,v 1.9 1997/02/22 16:10:40 peter Exp $
*
* TODO:
*/
@@ -154,6 +154,7 @@ struct mbuf *bp;
} else {
SendPapCode(php->id, PAP_NAK, "Login incorrect");
LcpClose();
+ reconnectCount = 0;
}
break;
case PAP_ACK:
@@ -175,6 +176,7 @@ struct mbuf *bp;
cp[len] = 0;
LogPrintf(LOG_PHASE_BIT, "Received PAP_NAK (%s)\n", cp);
LcpClose();
+ reconnectCount = 0;
break;
}
}
diff --git a/usr.sbin/ppp/ppp.8 b/usr.sbin/ppp/ppp.8
index 599d78b..09a3243 100644
--- a/usr.sbin/ppp/ppp.8
+++ b/usr.sbin/ppp/ppp.8
@@ -1,5 +1,5 @@
.\" manual page [] for ppp 0.94 beta2 + alpha
-.\" $Id: ppp.8,v 1.32 1997/05/12 11:54:12 brian Exp $
+.\" $Id: ppp.8,v 1.33 1997/05/13 09:31:05 brian Exp $
.Dd 20 September 1995
.Os FreeBSD
.Dt PPP 8
@@ -472,6 +472,9 @@ longer than the remote timeout, the reconnect feature will always be
triggered (up to the given number of times) after the remote side
times out and hangs up.
+NOTE: In this context, losing too many LQRs constitutes a loss of
+carrier and will trigger a reconnect.
+
If the
.Fl background
flag is specified, all phone numbers are dialed at most once until
diff --git a/usr.sbin/ppp/ppp.8.m4 b/usr.sbin/ppp/ppp.8.m4
index 599d78b..09a3243 100644
--- a/usr.sbin/ppp/ppp.8.m4
+++ b/usr.sbin/ppp/ppp.8.m4
@@ -1,5 +1,5 @@
.\" manual page [] for ppp 0.94 beta2 + alpha
-.\" $Id: ppp.8,v 1.32 1997/05/12 11:54:12 brian Exp $
+.\" $Id: ppp.8,v 1.33 1997/05/13 09:31:05 brian Exp $
.Dd 20 September 1995
.Os FreeBSD
.Dt PPP 8
@@ -472,6 +472,9 @@ longer than the remote timeout, the reconnect feature will always be
triggered (up to the given number of times) after the remote side
times out and hangs up.
+NOTE: In this context, losing too many LQRs constitutes a loss of
+carrier and will trigger a reconnect.
+
If the
.Fl background
flag is specified, all phone numbers are dialed at most once until
diff --git a/usr.sbin/ppp/vars.h b/usr.sbin/ppp/vars.h
index 9edc6a2..483121a 100644
--- a/usr.sbin/ppp/vars.h
+++ b/usr.sbin/ppp/vars.h
@@ -15,7 +15,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: vars.h,v 1.12 1997/04/21 01:02:02 brian Exp $
+ * $Id: vars.h,v 1.13 1997/05/10 03:39:57 brian Exp $
*
* TODO:
*/
@@ -117,5 +117,9 @@ extern struct pppvars pppVars;
int ipInOctets, ipOutOctets, ipKeepAlive;
int ipConnectSecs, ipIdleSecs;
-int lostCarrier;
+/*
+ * One of these should be set (reconnectRequired=1 or reconnectCount=0)
+ * every time LcpClose is called
+ */
+int reconnectRequired, reconnectCount;
#endif
OpenPOWER on IntegriCloud