Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 127388
Collapse All | Expand All

(-)ChangeLog (+6 lines)
Lines 1-3 Link Here
1
Mon Mar 27 11:42:36 2006  James Cameron  <quozl@us.netrek.org>
2
3
	* pptpgre.c (decaps_gre, dequeue_gre): only report to LOG_DEBUG if
4
	the debug option is set.  Reported by: Thomas Stein
5
	<thomas.stein@knowledgetools.de>
6
1
Tue Feb 14 10:52:13 2006  James Cameron  <quozl@us.netrek.org>
7
Tue Feb 14 10:52:13 2006  James Cameron  <quozl@us.netrek.org>
2
8
3
	* pptpd-1.3.1.tar.gz: released.
9
	* pptpd-1.3.1.tar.gz: released.
(-)NEWS (+2 lines)
Lines 1-3 Link Here
1
- avoid reporting packet loss if debug option not set [Cameron]
2
1
1.3.1: released 2005-02-14
3
1.3.1: released 2005-02-14
2
4
3
- make connections limit configurable at run-time [Cameron]
5
- make connections limit configurable at run-time [Cameron]
(-)pptpgre.c (-6 / +20 lines)
Lines 37-42 Link Here
37
#include "ppphdlc.h"
37
#include "ppphdlc.h"
38
#include "pptpgre.h"
38
#include "pptpgre.h"
39
#include "pptpdefs.h"
39
#include "pptpdefs.h"
40
#include "pptpctrl.h"
40
#include "defaults.h"
41
#include "defaults.h"
41
#include "pqueue.h"
42
#include "pqueue.h"
42
43
Lines 317-325 Link Here
317
		/* if it is timed out... */
318
		/* if it is timed out... */
318
		if (head->seq != gre.seq_recv + 1 ) {  /* wrap-around safe */
319
		if (head->seq != gre.seq_recv + 1 ) {  /* wrap-around safe */
319
			stats.rx_lost += head->seq - gre.seq_recv - 1;
320
			stats.rx_lost += head->seq - gre.seq_recv - 1;
320
			syslog(LOG_DEBUG, "GRE: timeout waiting for %d packets", head->seq - gre.seq_recv - 1);        
321
			if (pptpctrl_debug)
321
		}
322
				syslog(LOG_DEBUG, 
322
		syslog(LOG_DEBUG, "GRE: accepting #%d from queue", head->seq);
323
				       "GRE: timeout waiting for %d packets", 
324
				       head->seq - gre.seq_recv - 1);        
325
		}
326
		if (pptpctrl_debug)
327
			syslog(LOG_DEBUG, "GRE: accepting #%d from queue", 
328
			       head->seq);
323
		gre.seq_recv = head->seq;
329
		gre.seq_recv = head->seq;
324
		status = callback(cl, head->packet, head->packlen);
330
		status = callback(cl, head->packet, head->packlen);
325
		pqueue_del(head);
331
		pqueue_del(head);
Lines 399-414 Link Here
399
		}
405
		}
400
		/* check for out-of-order sequence number */
406
		/* check for out-of-order sequence number */
401
		if (seq_greater(seq, gre.seq_recv)) {
407
		if (seq_greater(seq, gre.seq_recv)) {
402
			syslog(LOG_DEBUG, "GRE: accepting packet #%d", seq);
408
			if (pptpctrl_debug)
409
				syslog(LOG_DEBUG, "GRE: accepting packet #%d", 
410
				       seq);
403
			stats.rx_accepted++;
411
			stats.rx_accepted++;
404
			gre.seq_recv = seq;
412
			gre.seq_recv = seq;
405
			return cb(cl, buffer + ip_len + headersize, payload_len);
413
			return cb(cl, buffer + ip_len + headersize, payload_len);
406
		} else if (seq == gre.seq_recv) {
414
		} else if (seq == gre.seq_recv) {
407
			syslog(LOG_DEBUG, "GRE: discarding duplicate or old packet #%d (expecting #%d)", seq, gre.seq_recv + 1);
415
			if (pptpctrl_debug)
416
				syslog(LOG_DEBUG,
417
				       "GRE: discarding duplicate or old packet #%d (expecting #%d)", 
418
				       seq, gre.seq_recv + 1);
408
			return 0;	/* discard duplicate packets */
419
			return 0;	/* discard duplicate packets */
409
		} else {
420
		} else {
410
			stats.rx_buffered++;
421
			stats.rx_buffered++;
411
			syslog(LOG_DEBUG, "GRE: buffering packet #%d (expecting #%d, lost or reordered)", seq, gre.seq_recv + 1);
422
			if (pptpctrl_debug)
423
				syslog(LOG_DEBUG,
424
				       "GRE: buffering packet #%d (expecting #%d, lost or reordered)",
425
				       seq, gre.seq_recv + 1);
412
			pqueue_add(seq, buffer + ip_len + headersize, payload_len);
426
			pqueue_add(seq, buffer + ip_len + headersize, payload_len);
413
			return 0;	/* discard out-of-order packets */
427
			return 0;	/* discard out-of-order packets */
414
		}
428
		}

Return to bug 127388