projects
/
l2tpns.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
028072c
)
Allow LCP re-negotiation after connection completes
author
Brendan O'Dea
<bod@optus.net>
Thu, 18 Nov 2004 13:15:28 +0000
(13:15 +0000)
committer
Brendan O'Dea
<bod@optus.net>
Thu, 18 Nov 2004 13:15:28 +0000
(13:15 +0000)
Changes
patch
|
blob
|
history
ppp.c
patch
|
blob
|
history
diff --git
a/Changes
b/Changes
index
6ff4fec
..
73c8112
100644
(file)
--- a/
Changes
+++ b/
Changes
@@
-10,6
+10,7
@@
- Revise nsctl to allow arbitrary strings/args to be passed to plugins.
- Add snoopctl, throttlectl plugins.
- Fix deletion from linked list.
- Revise nsctl to allow arbitrary strings/args to be passed to plugins.
- Add snoopctl, throttlectl plugins.
- Fix deletion from linked list.
+- Allow LCP re-negotiation after connection completes (thanks Yuri).
* Mon Nov 15 2004 Brendan O'Dea <bod@optusnet.com.au> 2.0.7
- Fix socket creation in host_unreachable() (thanks to Bjørn Augestad)
* Mon Nov 15 2004 Brendan O'Dea <bod@optusnet.com.au> 2.0.7
- Fix socket creation in host_unreachable() (thanks to Bjørn Augestad)
diff --git
a/ppp.c
b/ppp.c
index
f0e47e0
..
a169512
100644
(file)
--- a/
ppp.c
+++ b/
ppp.c
@@
-1,6
+1,6
@@
// L2TPNS PPP Stuff
// L2TPNS PPP Stuff
-char const *cvs_id_ppp = "$Id: ppp.c,v 1.2
6 2004-11-16 07:54:32
bodea Exp $";
+char const *cvs_id_ppp = "$Id: ppp.c,v 1.2
7 2004-11-18 13:15:28
bodea Exp $";
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <string.h>
@@
-600,6
+600,10
@@
void processipcp(tunnelidt t, sessionidt s, u8 *p, u16 l)
session[s].flags |= SF_IPCP_ACKED;
LOG(3, session[s].ip, s, t, "IPCP Acked, session is now active\n");
session[s].flags |= SF_IPCP_ACKED;
LOG(3, session[s].ip, s, t, "IPCP Acked, session is now active\n");
+
+ // clear LCP_ACKED flag for possible fast renegotiaion for routers
+ session[s].flags &= ~SF_LCP_ACKED;
+
return;
}
if (*p != ConfigReq)
return;
}
if (*p != ConfigReq)
@@
-840,7
+844,7
@@
void processccp(tunnelidt t, sessionidt s, u8 *p, u16 l)
*p = TerminateAck; // close
if (!(q = makeppp(b, sizeof(b), p, l, t, s, PPPCCP)))
{
*p = TerminateAck; // close
if (!(q = makeppp(b, sizeof(b), p, l, t, s, PPPCCP)))
{
- LOG(1,0,0,0, "Failed to send CCP packet.\n");
+ LOG(1,0,0,0, "Failed to send CCP packet.\n");
return;
}
tunnelsend(b, l + (q - b), t); // send it
return;
}
tunnelsend(b, l + (q - b), t); // send it