diff options
author | brian <brian@FreeBSD.org> | 1998-06-25 22:33:31 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 1998-06-25 22:33:31 +0000 |
commit | 1e23d0e92ca74f12045a6edbe3af1659468b1133 (patch) | |
tree | 3d61fb0aefd12cb54f86a51a4915c119627010a2 /usr.sbin/ppp/fsm.c | |
parent | c957b12bc95bfb0a1df6e5625df47e96bdf7df94 (diff) | |
download | FreeBSD-src-1e23d0e92ca74f12045a6edbe3af1659468b1133.zip FreeBSD-src-1e23d0e92ca74f12045a6edbe3af1659468b1133.tar.gz |
Add ``ipcp'' as an optional argument to ``open'', and make
open capable of re-negotiatiating the various layers.
It is now possible to change various link options and then
re-open the relevant layer, making the changes effective -
for example, switching off VJ compression or starting ECHO
LQRs on-the-fly.
Diffstat (limited to 'usr.sbin/ppp/fsm.c')
-rw-r--r-- | usr.sbin/ppp/fsm.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/usr.sbin/ppp/fsm.c b/usr.sbin/ppp/fsm.c index 4174650..0ca6065 100644 --- a/usr.sbin/ppp/fsm.c +++ b/usr.sbin/ppp/fsm.c @@ -17,7 +17,7 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: fsm.c,v 1.31 1998/06/20 00:19:36 brian Exp $ + * $Id: fsm.c,v 1.32 1998/06/20 01:55:28 brian Exp $ * * TODO: */ @@ -959,6 +959,18 @@ fsm_NullRecvResetAck(struct fsm *fp, u_char id) } void +fsm_Reopen(struct fsm *fp) +{ + if (fp->state == ST_OPENED) { + (*fp->fn->LayerDown)(fp); + FsmInitRestartCounter(fp); + FsmSendConfigReq(fp); + NewState(fp, ST_REQSENT); + (*fp->parent->LayerDown)(fp->parent->object, fp); + } +} + +void fsm2initial(struct fsm *fp) { if (fp->state == ST_STOPPED) |