summaryrefslogtreecommitdiffstats
path: root/sbin/spppcontrol/spppcontrol.c
diff options
context:
space:
mode:
authorjoerg <joerg@FreeBSD.org>2001-12-27 21:20:33 +0000
committerjoerg <joerg@FreeBSD.org>2001-12-27 21:20:33 +0000
commit72844dd1064711193bc59cad41b046e453a24749 (patch)
tree50f23cc1feb7d0f68e0eba4ebb9c71061bc5cd2a /sbin/spppcontrol/spppcontrol.c
parentc3e53c63c1bc50f3dba08cc9a313b56f7092b0da (diff)
downloadFreeBSD-src-72844dd1064711193bc59cad41b046e453a24749.zip
FreeBSD-src-72844dd1064711193bc59cad41b046e453a24749.tar.gz
Userland part of making the LCP restart timer configurable.
Obtained from: i4b (with changes)
Diffstat (limited to 'sbin/spppcontrol/spppcontrol.c')
-rw-r--r--sbin/spppcontrol/spppcontrol.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/sbin/spppcontrol/spppcontrol.c b/sbin/spppcontrol/spppcontrol.c
index e1ddfff..111ac0d 100644
--- a/sbin/spppcontrol/spppcontrol.c
+++ b/sbin/spppcontrol/spppcontrol.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997 Joerg Wunsch
+ * Copyright (c) 1997, 2001 Joerg Wunsch
*
* All rights reserved.
*
@@ -65,6 +65,8 @@ main(int argc, char **argv)
int s, c;
int errs = 0, verbose = 0;
size_t off;
+ long to;
+ char *endp;
const char *ifname, *cp;
struct ifreq ifr;
struct spppreq spr;
@@ -165,7 +167,20 @@ main(int argc, char **argv)
spr.defs.hisauth.flags |= AUTHFLAG_NORECHALLENGE;
else if (strcmp(argv[0], "rechallenge") == 0)
spr.defs.hisauth.flags &= ~AUTHFLAG_NORECHALLENGE;
- else if (strcmp(argv[0], "enable-vj") == 0)
+ else if (startswith("lcp-timeout=")) {
+ cp = argv[0] + off;
+ to = strtol(cp, &endp, 10);
+ if (*cp == '\0' || *endp != '\0' ||
+ /*
+ * NB: 10 ms is the minimal possible value for
+ * hz=100. We assume no kernel has less clock
+ * frequency than that...
+ */
+ to < 10 || to > 20000)
+ errx(EX_DATAERR, "bad lcp timeout value: %s",
+ cp);
+ spr.defs.lcp.timeout = to;
+ } else if (strcmp(argv[0], "enable-vj") == 0)
spr.defs.enable_vj = 1;
else if (strcmp(argv[0], "disable-vj") == 0)
spr.defs.enable_vj = 0;
@@ -211,6 +226,7 @@ print_vals(const char *ifname, struct spppreq *sp)
AUTHNAMELEN, sp->defs.hisauth.name,
authflags(sp->defs.hisauth.flags));
}
+ printf("\tlcp-timeout=%d ms\n", sp->defs.lcp.timeout);
printf("\t%sable-vj\n", sp->defs.enable_vj? "en": "dis");
}
OpenPOWER on IntegriCloud