From 3a379b9107e5a2cbf87508fb1b2094c8fa1955bb Mon Sep 17 00:00:00 2001 From: Paul Mackerras Date: Thu, 10 Aug 1995 06:51:06 +0000 Subject: [PATCH 1/1] Ignore NAK'd options we don't recognize. --- pppd/ipcp.c | 4 +--- pppd/lcp.c | 8 ++++---- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/pppd/ipcp.c b/pppd/ipcp.c index 112def9..3d99235 100644 --- a/pppd/ipcp.c +++ b/pppd/ipcp.c @@ -18,7 +18,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: ipcp.c,v 1.19 1995/06/01 01:30:38 paulus Exp $"; +static char rcsid[] = "$Id: ipcp.c,v 1.20 1995/08/10 06:51:04 paulus Exp $"; #endif /* @@ -584,8 +584,6 @@ ipcp_nakci(f, p, len) try.neg_addr = 1; no.neg_addr = 1; break; - default: - goto bad; } p = next; } diff --git a/pppd/lcp.c b/pppd/lcp.c index 74a3235..f9d6c1c 100644 --- a/pppd/lcp.c +++ b/pppd/lcp.c @@ -18,7 +18,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: lcp.c,v 1.20 1995/06/30 01:47:15 paulus Exp $"; +static char rcsid[] = "$Id: lcp.c,v 1.21 1995/08/10 06:51:06 paulus Exp $"; #endif /* @@ -878,11 +878,13 @@ lcp_nakci(f, p, len) * `let me authenticate myself with you' which is a bit pointless. * For the quality protocol, the Nak means `ask me to send you quality * reports', but if we didn't ask for them, we don't want them. + * An option we don't recognize represents the peer asking to + * negotiate some option we don't support, so ignore it. */ while (len > CILEN_VOID) { GETCHAR(citype, p); GETCHAR(cilen, p); - if( (len -= cilen) < 0 ) + if ((len -= cilen) < 0) goto bad; next = p + cilen - 2; @@ -918,8 +920,6 @@ lcp_nakci(f, p, len) if (go->neg_lqr || no.neg_lqr || cilen != CILEN_LQR) goto bad; break; - default: - goto bad; } p = next; } -- 2.39.2