From: Brendan O'Dea Date: Wed, 31 Aug 2005 12:38:38 +0000 (+0000) Subject: avoid Code-Reject loop X-Git-Tag: 2.2.1-2fdn3.1~19^2^2~1^2~118 X-Git-Url: http://git.sameswireless.fr/l2tpns.git/commitdiff_plain/3fdc1ce3731867455de533ab953f08073b56ffd0?ds=inline avoid Code-Reject loop --- diff --git a/Changes b/Changes index 5df127d..181b4c3 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,6 @@ +* Wed Aug 31 2005 Brendan O'Dea 2.1.5 +- Avoid Code-Reject loop. + * Mon Aug 29 2005 Brendan O'Dea 2.1.4 - Drop level of "Unexpected CHAP message" log. - Fix parsing of ProtocolRej (allow 1 or two byte protocols). diff --git a/l2tpns.h b/l2tpns.h index c58e2d9..cd6e005 100644 --- a/l2tpns.h +++ b/l2tpns.h @@ -1,5 +1,5 @@ // L2TPNS Global Stuff -// $Id: l2tpns.h,v 1.85 2005-08-29 06:17:53 bodea Exp $ +// $Id: l2tpns.h,v 1.86 2005-08-31 12:38:38 bodea Exp $ #ifndef __L2TPNS_H__ #define __L2TPNS_H__ @@ -15,7 +15,7 @@ #include #include -#define VERSION "2.1.4" +#define VERSION "2.1.5" // Limits #define MAXTUNNEL 500 // could be up to 65535 diff --git a/l2tpns.spec b/l2tpns.spec index 29dd2cc..72943db 100644 --- a/l2tpns.spec +++ b/l2tpns.spec @@ -1,6 +1,6 @@ Summary: A high-speed clustered L2TP LNS Name: l2tpns -Version: 2.1.4 +Version: 2.1.5 Release: 1 Copyright: GPL Group: System Environment/Daemons @@ -43,5 +43,5 @@ rm -rf %{buildroot} %attr(644,root,root) /usr/share/man/man[58]/* %changelog -* Mon Aug 29 2005 Brendan O'Dea 2.1.4-1 -- 2.1.4 release, see /usr/share/doc/l2tpns-2.1.4/Changes +* Wed Aug 31 2005 Brendan O'Dea 2.1.5-1 +- 2.1.5 release, see /usr/share/doc/l2tpns-2.1.5/Changes diff --git a/ppp.c b/ppp.c index abd5609..d25b7e2 100644 --- a/ppp.c +++ b/ppp.c @@ -1,6 +1,6 @@ // L2TPNS PPP Stuff -char const *cvs_id_ppp = "$Id: ppp.c,v 1.77 2005-08-29 06:17:53 bodea Exp $"; +char const *cvs_id_ppp = "$Id: ppp.c,v 1.78 2005-08-31 12:38:38 bodea Exp $"; #include #include @@ -866,7 +866,7 @@ void processlcp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l) { // Ignore it, last_packet time is set earlier than this. } - else + else if (*p != CodeRej) { int code = *p; int mru = session[s].mru; @@ -1109,7 +1109,7 @@ void processipcp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l) tunnelsend(b, l + (q - b), t); change_state(s, ipcp, Stopped); } - else + else if (*p != CodeRej) { int code = *p; int mru = session[s].mru; @@ -1330,7 +1330,7 @@ void processipv6cp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l) tunnelsend(b, l + (q - b), t); change_state(s, ipv6cp, Stopped); } - else + else if (*p != CodeRej) { int code = *p; int mru = session[s].mru; @@ -1627,7 +1627,7 @@ void processccp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l) else // compression requested--reject *p = ConfigRej; - q = makeppp(b, sizeof(b), p, l, s, t, PPPCCP); + q = makeppp(b,sizeof(b), p, l, s, t, PPPCCP); if (!q) return; switch (session[s].ppp.ccp) @@ -1691,7 +1691,7 @@ void processccp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l) tunnelsend(b, l + (q - b), t); change_state(s, ccp, Stopped); } - else + else if (*p != CodeRej) { int code = *p; int mru = session[s].mru;