Update debian/changelog
This commit is contained in:
parent
b85ea86670
commit
f5354e1754
3 changed files with 46 additions and 36 deletions
6
debian/changelog
vendored
6
debian/changelog
vendored
|
|
@ -1,3 +1,9 @@
|
|||
l2tpns (2.2.1-2fdn3.5) unstable; urgency=low
|
||||
|
||||
* Update debian/changelog
|
||||
|
||||
-- Fernando Alves <fernando.alves@sameswireless.fr> Sun, 10 Feb 2013 23:39:56 +0100
|
||||
|
||||
l2tpns (2.2.1-2fdn3.4) unstable; urgency=low
|
||||
|
||||
* Add parameter to disable the send of the L2TP HELLO message (Apple compatibility).
|
||||
|
|
|
|||
2
l2tpns.h
2
l2tpns.h
|
|
@ -64,7 +64,7 @@
|
|||
#define MAXFRAGLEN 1496 // Maximum length for Multilink fragment (The multilink may contain only one link)
|
||||
#define MAXFRAGNUM 512 // Maximum number of Multilink fragment in a bundle (must be in the form of 2^X)
|
||||
// it's not expected to have a space for more than 10 unassembled packets = 10 * MAXBUNDLESES
|
||||
#define MAXFRAGNUM_MASK 511 // Must be equal to MAXFRAGNUM-1
|
||||
#define MAXFRAGNUM_MASK (MAXFRAGNUM - 1) // Must be equal to MAXFRAGNUM-1
|
||||
|
||||
// Constants
|
||||
#ifndef ETCDIR
|
||||
|
|
|
|||
34
ppp.c
34
ppp.c
|
|
@ -1934,7 +1934,7 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
{
|
||||
// There have a long break of the link !!!!!!!!
|
||||
// M_offset is bigger that the fragmentation buffer size
|
||||
LOG(3, s, t, "MPPP: M_offset out of range, min:%d, begin_seq:%d, jitteravg:%d\n", Mmin, this_fragmentation->start_seq, sess_local[s].jitteravg);
|
||||
LOG(3, s, t, "MPPP: M_offset out of range, min:%d, begin_seq:%d\n", Mmin, this_fragmentation->start_seq);
|
||||
|
||||
// Calculate the new start index, the previous frag are lost
|
||||
begin_index = (M_offset + this_fragmentation->start_index) & MAXFRAGNUM_MASK;
|
||||
|
|
@ -1951,7 +1951,7 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
if (frag_offset < 0)
|
||||
{
|
||||
// this packet comes before the next
|
||||
LOG(3, s, t, "MPPP: packet comes before the next, seq:%d, begin_seq:%d, size frag:%d\n", seq_num, this_fragmentation->start_seq, l);
|
||||
LOG(3, s, t, "MPPP: (COMES BEFORE) the next, seq:%d, begin_seq:%d, size_frag:%d, flags:%02X is LOST\n", seq_num, this_fragmentation->start_seq, l, flags);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1959,7 +1959,7 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
if (frag_offset >= MAXFRAGNUM)
|
||||
{
|
||||
// frag_offset is bigger that the fragmentation buffer size
|
||||
LOG(3, s, t, "MPPP: Index out of range, seq:%d, begin_seq:%d, jitteravg:%d\n", seq_num, this_fragmentation->start_seq, sess_local[s].jitteravg);
|
||||
LOG(3, s, t, "MPPP: Index out of range, seq:%d, begin_seq:%d\n", seq_num, this_fragmentation->start_seq);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1971,8 +1971,8 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
|
||||
if (this_frag->length > 0)
|
||||
// This fragment is lost, It was around the buffer and it was never completed the packet.
|
||||
LOG(3, this_frag->sid, this_frag->tid, "MPPP: (INSERT) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
this_frag->seq, frag_index, this_frag->flags, this_frag->jitteravg);
|
||||
LOG(3, this_frag->sid, this_frag->tid, "MPPP: (INSERT) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_frag->seq, frag_index, this_frag->flags);
|
||||
|
||||
this_frag->length = l;
|
||||
this_frag->sid = s;
|
||||
|
|
@ -2001,9 +2001,9 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
{
|
||||
// This fragment is lost, It was around the buffer and it was never completed the packet.
|
||||
LOG(3, this_fragmentation->fragment[frag_index_next].sid, this_fragmentation->fragment[frag_index_next].tid,
|
||||
"MPPP: (NEXT) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
"MPPP: (NEXT) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_fragmentation->fragment[frag_index_next].seq, frag_index_next,
|
||||
this_fragmentation->fragment[frag_index_next].flags, this_fragmentation->fragment[frag_index_next].jitteravg);
|
||||
this_fragmentation->fragment[frag_index_next].flags);
|
||||
// this frag is lost
|
||||
this_fragmentation->fragment[frag_index_next].length = 0;
|
||||
this_fragmentation->fragment[frag_index_next].flags = 0;
|
||||
|
|
@ -2020,9 +2020,9 @@ void processmpin(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
|
|||
{
|
||||
// This fragment is lost, It was around the buffer and it was never completed the packet.
|
||||
LOG(3, this_fragmentation->fragment[frag_index_prev].sid, this_fragmentation->fragment[frag_index_prev].tid,
|
||||
"MPPP: (PREV) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
"MPPP: (PREV) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_fragmentation->fragment[frag_index_prev].seq, frag_index_prev,
|
||||
this_fragmentation->fragment[frag_index_prev].flags, this_fragmentation->fragment[frag_index_prev].jitteravg);
|
||||
this_fragmentation->fragment[frag_index_prev].flags);
|
||||
|
||||
this_fragmentation->fragment[frag_index_prev].length = 0;
|
||||
this_fragmentation->fragment[frag_index_prev].flags = 0;
|
||||
|
|
@ -2066,9 +2066,9 @@ find_frame:
|
|||
{
|
||||
// This fragment is lost, it was never completed the packet.
|
||||
LOG(3, this_fragmentation->fragment[end_index].sid, this_fragmentation->fragment[end_index].tid,
|
||||
"MPPP: (FIND END) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
"MPPP: (FIND END) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_fragmentation->fragment[end_index].seq, begin_index,
|
||||
this_fragmentation->fragment[end_index].flags, this_fragmentation->fragment[end_index].jitteravg);
|
||||
this_fragmentation->fragment[end_index].flags);
|
||||
// this frag is lost
|
||||
this_fragmentation->fragment[end_index].length = 0;
|
||||
this_fragmentation->fragment[end_index].flags = 0;
|
||||
|
|
@ -2097,9 +2097,9 @@ find_frame:
|
|||
{
|
||||
// This fragment is lost, it was never completed the packet.
|
||||
LOG(3, this_fragmentation->fragment[begin_index].sid, this_fragmentation->fragment[begin_index].tid,
|
||||
"MPPP: (FIND BEGIN) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
"MPPP: (FIND BEGIN) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_fragmentation->fragment[begin_index].seq, begin_index,
|
||||
this_fragmentation->fragment[begin_index].flags, this_fragmentation->fragment[begin_index].jitteravg);
|
||||
this_fragmentation->fragment[begin_index].flags);
|
||||
// this frag is lost
|
||||
this_fragmentation->fragment[begin_index].length = 0;
|
||||
this_fragmentation->fragment[begin_index].flags = 0;
|
||||
|
|
@ -2117,6 +2117,10 @@ assembling_frame:
|
|||
{
|
||||
if (!(this_fragmentation->fragment[begin_index].flags & MP_BEGIN))
|
||||
{
|
||||
LOG(3, this_fragmentation->fragment[begin_index].sid, this_fragmentation->fragment[begin_index].tid,
|
||||
"MPPP: (NOT BEGIN) seq_num:%d frag_index:%d flags:%02X\n",
|
||||
this_fragmentation->fragment[begin_index].seq, begin_index,
|
||||
this_fragmentation->fragment[begin_index].flags);
|
||||
// should occur only after an "M_Offset out of range"
|
||||
// The start sequence must be a begin sequence
|
||||
this_fragmentation->start_index = (begin_index +1) & MAXFRAGNUM_MASK;
|
||||
|
|
@ -2195,9 +2199,9 @@ assembling_frame:
|
|||
(this_fragmentation->fragment[begin_index].seq != this_fragmentation->start_seq))
|
||||
{
|
||||
LOG(3, this_fragmentation->fragment[begin_index].sid, this_fragmentation->fragment[begin_index].tid,
|
||||
"MPPP: (START) seq_num:%d frag_index:%d flags:%d jitteravg:%d is LOST\n",
|
||||
"MPPP: (START) seq_num:%d frag_index:%d flags:%02X is LOST\n",
|
||||
this_fragmentation->fragment[begin_index].seq, begin_index,
|
||||
this_fragmentation->fragment[begin_index].flags, this_fragmentation->fragment[begin_index].jitteravg);
|
||||
this_fragmentation->fragment[begin_index].flags);
|
||||
this_fragmentation->fragment[begin_index].length = 0;
|
||||
this_fragmentation->fragment[begin_index].flags = 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue