projects
/
l2tpns.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: inverted delete/add routes in cluster mode
[l2tpns.git]
/
ppp.c
diff --git
a/ppp.c
b/ppp.c
index
fb74ba9
..
5ed8563
100644
(file)
--- a/
ppp.c
+++ b/
ppp.c
@@
-15,6
+15,7
@@
#ifdef LAC
#include "l2tplac.h"
#endif
#ifdef LAC
#include "l2tplac.h"
#endif
+#include "pppoe.h"
extern tunnelt *tunnel;
extern bundlet *bundle;
extern tunnelt *tunnel;
extern bundlet *bundle;
@@
-425,7
+426,7
@@
void lcp_open(sessionidt s, tunnelidt t)
}
}
}
}
-
static
void lcp_restart(sessionidt s)
+void lcp_restart(sessionidt s)
{
session[s].ppp.phase = Establish;
// This-Layer-Down
{
session[s].ppp.phase = Establish;
// This-Layer-Down
@@
-558,7
+559,7
@@
void processlcp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
if (session[s].die) // going down...
return;
if (session[s].die) // going down...
return;
- LOG((
*p == EchoReq || *p == EchoReply) ? 4 : 3
, s, t,
+ LOG((
(*p == EchoReq || *p == EchoReply) ? 4 : 3)
, s, t,
"LCP: recv %s\n", ppp_code(*p));
if (config->debug > 3) dumplcp(p, l);
"LCP: recv %s\n", ppp_code(*p));
if (config->debug > 3) dumplcp(p, l);
@@
-2521,6
+2522,11
@@
uint8_t *makeppp(uint8_t *b, int size, uint8_t *p, int l, sessionidt s, tunnelid
uint16_t type = mtype;
uint8_t *start = b;
uint16_t type = mtype;
uint8_t *start = b;
+ if (t == TUNNEL_ID_PPPOE)
+ {
+ return pppoe_makeppp(b, size, p, l, s, t, mtype, prio, bid, mp_bits);
+ }
+
if (size < 16) // Need more space than this!!
{
LOG(0, s, t, "makeppp buffer too small for L2TP header (size=%d)\n", size);
if (size < 16) // Need more space than this!!
{
LOG(0, s, t, "makeppp buffer too small for L2TP header (size=%d)\n", size);