diff options
author | brian <brian@FreeBSD.org> | 2001-08-27 10:42:21 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 2001-08-27 10:42:21 +0000 |
commit | 350c4e627167b313715feaf52e4068a2aa7fbe23 (patch) | |
tree | 3ae377524325eefe66c320bd12f9bbadaba14b4d /usr.sbin | |
parent | e7bdb473a803de93583bc1ab5e8629ed85f482da (diff) | |
download | FreeBSD-src-350c4e627167b313715feaf52e4068a2aa7fbe23.zip FreeBSD-src-350c4e627167b313715feaf52e4068a2aa7fbe23.tar.gz |
Send a reset request for every packet received when our encryption
dictionaries are out of sync.
This avoids the complications that happen when our original reset
request gets lost in transit (quite likely in hind sight, given a
lossy link) when we end up ignoring the peer for the next (up to)
256 packets.
Submitted by: Nick Sayer <nsayer@quack.kfu.com>
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/ppp/mppe.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/usr.sbin/ppp/mppe.c b/usr.sbin/ppp/mppe.c index f079660..b2acc47 100644 --- a/usr.sbin/ppp/mppe.c +++ b/usr.sbin/ppp/mppe.c @@ -296,6 +296,8 @@ MPPEInput(void *v, struct ccp *ccp, u_short *proto, struct mbuf *mp) * The spec says that we shouldn't be though.... */ log_Printf(LogDEBUG, "MPPE: Not flushed - discarded\n"); + fsm_Output(&ccp->fsm, CODE_RESETREQ, ccp->fsm.reqid++, NULL, 0, + MB_CCPOUT); m_freem(mp); return NULL; } |