-
Notifications
You must be signed in to change notification settings - Fork 2
/
ChangeLog
984 lines (658 loc) · 35.4 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
Thu Jan 18 11:10:32 2018 James Cameron <[email protected]>
* pptp-1.10.0: released.
[this file is not maintained, see NEWS and "git log"]
Tue Nov 29 16:13:57 2016 James Cameron <[email protected]>
* pptp-1.9.0: released.
[this file is not maintained, see "git log"]
Wed Oct 23 19:04:57 2013 James Cameron <[email protected]>
* pptp-1.8.0: released.
Thu Aug 30 13:45:26 2012 Paul Howarth <[email protected]>
* options.pptp: fix typo in 'Encryption' comment, add notes and
references regarding recent chapcrack exploit, note that the
ppp_mppe kernel module will not load into the kernel if it's
booted in FIPS mode (http://bugzilla.redhat.com/845112), and fix
broken link to Jan Dubiec's ppp_mppe_mppc code.
Wed Nov 30 09:02:18 2011 Paul Howarth <[email protected]>
* Makefile (config.h): fix unexpected build failure with a
highly-parallel build (-j16).
Thu Mar 3 12:24:15 2011 David Lamparter <[email protected]>
* pptp.c, pptp_callmgr.c, pptp.8: add -nohostroute option to
disable adding a host route for the pptp server to the routing
table. Also add some documentation while at it.
Mon Feb 21 15:01:14 2011 David Lamparter <[email protected]>
* pptp.c, pptp_callmgr.c, pptp_gre.c, pptp.8: add --rtmark option
for specifying the Linux policy routing / netfilter mark.
Thu Sep 30 16:16:58 2010 Paul Howarth <[email protected]>
* pptp_ctrl.c: we could maintain a separate vector of peer call
IDs and use that when we get a call-disconnect-notify packet to
find our call ID and close that call, but as
call-disconnect-notify packets are relatively rare, I've tried a
slower but simpler approach of doing a linear search through the
existing vector to look for the peer's call ID.
Tue Jun 15 15:02:28 2010 James Cameron <[email protected]>
* pptp.c (open_callmgr): fix usage of status returned by waitpid;
it must be wrapped by WEXITSTATUS to shift bits as required.
Tue Jun 15 15:00:40 2010 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_conn_is_dead): immediately destroying the
connection and freeing the structure has led to segmentation
faults on more recent heap implementations, since we use the
structure after it has been freed.
Defer the free of the structure until after all uses of it have
ceased, by adding a connection state for dead and terminating the
main loop once it is detected.
Fri Jun 4 10:54:04 2010 Jan Just Keijser <[email protected]>
* pptp_ctrl.c: check for failure return by pptp_send_ctrl_packet
and avoid using freed struct conn.
Tue Nov 10 15:39:33 2009 Charles Shen <[email protected]>
* pptp_ctrl.c (ctrlp_disp): add call ID of outgoing call so that
Call-Disconnect-Notify from peer causes correct disconnection
sequence.
Thu Jun 25 11:39:24 2009 James Cameron <[email protected]>
* AUTHORS: maintainer mail address change, [email protected] is
no longer valid.
Mon Jun 1 14:43:00 2009 Paul Howarth <[email protected]>
* pptpsetup: only check for MPPE support in kernel and pppd if
an encrypted tunnel is being created.
Wed Mar 25 13:38:00 2009 Paul Howarth <[email protected]>
* pptpsetup: retain permissions on chap-secrets file when
deleting tunnels (http://bugzilla.redhat.com/492090).
Thu Jul 24 15:51:30 2008 Paul Howarth <[email protected]>
* routing.c, pptp_compat.c: compilation fixes for old
distributions.
Thu Jul 24 15:28:32 2008 Ilya Voronin <[email protected]>
* routing.c, Makefile: fixe use of /bin/ip and all compiler
warnings on Solaris.
Thu May 22 09:44:19 2008 James Cameron <[email protected]>
* routing.c: add config.h and use IP_BINARY.
* Makefile (IP): add pointer to IP binary, store it in config.h,
and add dependencies to support parallel make and development.
Wed May 14 15:59:17 2008 James Cameron <[email protected]>
* pptp-1.7.2 released.
Fri Jan 11 13:20:18 2008 Ilya Voronin <[email protected]>
* ppp_fcs.h, pptp.c, pptp_ctrl.h, pptp_gre.h, pptp_msg.h: port to
Solaris 10/11.
Wed Nov 21 14:29:46 2007 Leo Savernik <[email protected]>
* pptp_ctrl.c (pptp_fd_set): fix compile with an ANSI
C89-compliant compiler.
Tue Aug 28 10:17:36 2007 James Cameron <[email protected]>
* README, pptp.c: assign copyright to Free Software Foundation,
and make license explicit.
Signed-off-by: "C. Scott Ananian" <[email protected]>
Wed Apr 4 16:30:24 2007 James Cameron <[email protected]>
* pptp.8, pptp.c: add --test-type and --test-rate options.
* pptp_gre.c: use alternate write(2) function for sending GRE
packets.
* test.c: implement reordering tests to assist with pptpd testing.
These tests reorder the stream to simulate real-world examples.
Fri Dec 15 02:02:08 2006 Michael Adda <[email protected]>
* pptp_gre.c: when we fail to write due to a transient error
simply ignore it (treat it as a drop).
Thu Oct 12 13:52:46 2006 James Cameron <[email protected]>
* pptp_gre.c (pptp_gre_copy): select(2) may return error, and the
code was checking the read file descriptors without checking if
they are valid.
Thu Aug 17 14:36:18 2006 James Cameron <[email protected]>
* Makefile: add pptpsetup man page using pod2man.
Wed Aug 2 16:21:08 2006 James Cameron <[email protected]>
* routing.c, routing.h, pptp_callmgr.c (callmgr_main): add route
to PPTP server. Experimental feature. Note that this has a
side-effect of leaving a route to the server in place after the
tunnel has terminated.
Wed Aug 2 16:19:06 2006 James Cameron <[email protected]>
* pptp.c: fix a few compilation warnings.
Wed Aug 2 16:02:23 2006 James Cameron <[email protected]>
* pptpsetup: merge updates from Nelson Ferraz as of 24th April.
* Makefile (dist): include pptpsetup in kit.
Thu Apr 20 08:52:45 2006 James Cameron <[email protected]>
* Makefile (dist): remove Reference documentation as the license
is non-free. The documentation is available from other sources.
Thu Apr 20 08:49:01 2006 James Cameron <[email protected]>
* pptp.8: merge Debian contribution in 1.7.0-2 by Ola Lundqvist.
Mon Apr 3 15:28:37 2006 James Cameron <[email protected]>
* pptpsetup: add script contributed by Nelson Ferraz.
Mon Mar 27 10:09:20 2006 James Cameron <[email protected]>
* options.pptp: add refuse-pap to default options, along with a
comment that a server may need to use PAP or CHAP if it is not
using MPPE.
Mon Feb 13 14:01:34 2006 James Cameron <[email protected]>
* pptp-1.7.1 released.
Fri Feb 10 10:59:31 2006 James Cameron <[email protected]>
* pptp.c: use prctl(2) to set process name for gateway process so
that killall(1) of pptp will affect control connection call
manager only.
Mon Aug 29 15:42:03 2005 James Cameron <[email protected]>
* pptp.c: add --version feature.
Mon Aug 22 10:46:38 2005 James Cameron <[email protected]>
* util.c (sigpipe_assign): remove superfluous sigset variable
and calls; they served no purpose. Reported by: Pavol Gono.
Sat Aug 20 23:14:25 2005 James Cameron <[email protected]>
* options.pptp: default to not require MPPE, per Red Hat Bugzilla
#166394.
Thu Aug 11 10:46:32 2005 James Cameron <[email protected]>
* PROTOCOL-SECURITY: add write-up regarding protocol security risks.
* Makefile (dist): add PROTOCOL-SECURITY write-up.
Wed Jul 27 20:49:30 2005 James Cameron <[email protected]>
* pptp-1.7.0 released.
Mon Jul 11 13:17:37 2005 James Cameron <[email protected]>
* pptp_gre.c (decaps_gre): silently discard packets that are not
for this call. Reported by: Alan Jenkins.
Thu Mar 31 17:41:17 2005 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_dispatch): handle signals first, since there's
a possibility of premature return from the function.
* pptp_callmgr.c (callmgr_main): terminate faster when peer closes
control connection.
Thu Mar 10 11:07:52 2005 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_handle_timer): when we close connection due to
loss of echo replies, say so in the log.
Reported by: Jean Wolter.
* pptp_ctrl.c: fix signal deadlock on kernel 2.6.x
Reported by: Jean Wolter.
* util.c, util.h: adopt sigpipe implementation from pptpd.
* pptp_ctrl.c (pptp_conn_open): use sigpipe implementation instead
of trying I/O in signal handler (which causes deadlocks).
* pptp_ctrl.c (pptp_fd_set): include the sigpipe in the file
descriptor set.
* pptp_ctrl.c (pptp_dispatch): detect queued signals via sigpipe.
* pptp_ctrl.c (pptp_conn_destroy): close the sigpipe.
Fri Feb 18 12:38:18 2005 James Cameron <[email protected]>
* pptp-1.6.0 released.
Fri Feb 18 12:38:02 2005 James Cameron <[email protected]>
* Makefile (install): move options.pptp to this package from the
RPM spec file.
Tue Dec 14 08:56:07 2004 James Cameron <[email protected]>
* pptp_ctrl.c (ctrlp_disp): fix typo. From: Avi Kivity
Tue Dec 7 09:43:00 2004 James Cameron <[email protected]>
* pptp_ctrl.c: add error propagation to the ctrlp_disp callchain,
so that we don't double-free the connection on a stop control
connection reply. From: Avi Kivity <[email protected]>
Wed Nov 10 09:49:48 2004 James Cameron <[email protected]>
* util.{c,h}: recent compilers spew a packetload of compilation
warnings. From: Avi Kivity <[email protected]>
Tue Nov 9 12:30:57 2004 James Cameron <[email protected]>
* pptp.{8,c}, pptp_ctrl.c, pptp_options.h: add --idle-wait (time
to wait before sending an echo request on the control connection)
and --max-echo-wait (time to wait before giving up on lack of
reply to an echo request). The latter is not yet implemented.
Tue Nov 9 12:23:48 2004 James Cameron <[email protected]>
* pptp_callmgr.c, pptp_ctrl.{c,h}: pptp_dispatch and its
subordinates insist on handling fatal errors by calling
pptp_conn_destroy. unfortunately, as the comments say,
callmgr_main uses the connection afterwards with the usual
results. Added error propagation to the routines mentioned,
allowing callmgr_main to have the honor of closing the connection.
From: Avi Kivity <[email protected]>
Wed Oct 27 21:03:28 2004 James Cameron <[email protected]>
* pptp_callmgr.c (callmgr_main): pptp sometimes crashes in
pptp_fd_set and leaves a core dump. Think this is due to a signal
being caught and longjmp'ed to callmgr_main's shutdown label after
we are out of that function, causing garbage local variables to be
used. From: Avi Kivity <[email protected]>
Wed Jul 21 16:52:01 CEST 2004 Rein Klazes <[email protected]>
* pptp_ctrl.c (ctrlp_rep): Do not log sending of echo requests,
preventing dead-locks observed with Linux 2.6 systems.
The syslog call is not reentrant and must not be used within a
signal handler. A better solution would probably be to get rid of
the SIGALRM timer altogether.
Wed Jul 21 19:00:59 2004 Peter Surda <[email protected]>
* pptp_callmgr.c (callmgr_main): prevent kill of init.
Sat Jun 26 14:37:10 2004 James Cameron <[email protected]>
* pptp_gre.c (decaps_hdlc): portability fix, use IPPROTO_IP in
place of SOL_IP in getsockopt(). From: Thomas Quinot
Tue Jun 22 19:08:58 2004 James Cameron <[email protected]>
* Makefile, AUTHORS, rename package from pptp-linux to pptp.
Tue Jun 22 18:08:27 2004 James Cameron <[email protected]>
* pptp-linux-1.5.0 released.
Fri Jun 11 09:28:05 2004 Chris Wilson <[email protected]>
* pptp.8, pptp_gre.c: make the statistics work properly when
buffering is disabled. Fix the issue with log messages claiming
buffering when no buffering is being done.
Thu Jun 10 16:58:53 2004 James Cameron <[email protected]>
* pptp.c (main): remove the sleep(3) on termination; it isn't
really required; and causes the GRE-to-PPP gateway process to hang
around after the connection has been terminated.
* pptp.c (open_callmgr): call manager was inheriting the GRE
socket, so close it before launching the callmgr, a regression
introduced 18th July 2002, in the patch to bind the GRE socket
earlier.
Thu Jun 10 08:34:17 CEST 2004 Rein Klazes <[email protected]>
* pptp_callmgr.c: fix a case when the call manager does not
shutdown properly, a regression introduced by the changes on
2003 Oct 22 and 23.
Wed Jun 9 10:08:02 2004 Chris Wilson <[email protected]>
* pptp.8, pptp.c, pptp_gre.c, pptp_gre.h: add --nobuffer option to
eliminate all buffering of packets, a "pptp quake patch".
Wed Jun 9 09:37:06 2004 Paul Howarth <[email protected]>
* inststr.c: fix non-setting of the command line.
Tue Jun 8 21:25:27 2004 James Cameron <[email protected]>
* pptp-linux-1.5.0-rc1 released.
Sat Jun 5 22:44:50 2004 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_read_some): fix for CPU loop after pppd killed
with -9, if read() returns zero, it is because the control
connection has closed, so destroy the connection.
Wed Mar 24 08:45:12 2004 Mark-Andre Hopf <[email protected]>
* pptp.c: fix compile for ARM architecture.
Mon Mar 8 11:04:00 2004 Chris Wilson <[email protected]>
* pptp.8: added documentation for command-line options where
missing. Updated to reflect the use of getopt.
Tue Mar 2 09:53:53 2004 Peter McCurdy <[email protected]>
* pptp.c (main, do_nothing): do not hang when a connection is
refused. When the controlling process (pptp.c) paused while
waiting for the child to send SIGUSR1, if the child died then the
controlling process wouldn't ever wake up. Now if the child dies,
SIGCHLD gets handled and the controlling process quits.
Tue Feb 10 20:35:18 2004 James Cameron <[email protected]>
* pptp_gre.c (decaps_hdlc): temporarily add code that captures
additional detail if EMSGSIZE is returned by read().
Fri Jan 2 10:05:17 2004 James Cameron <[email protected]>
* pptp-linux-1.4.0 released.
Mon Dec 1 11:58:24 2003 James Cameron <[email protected]>
* pptp.c (main): remove arguments debugging printf.
Wed Nov 26 12:22:00 2003 Chris Wilson <[email protected]>
* pptp.c: fixed argument handling so that hostname can be supplied
anywhere on the command line, not just at the start. pppd options
starting with "-" but before "--" are no longer supported.
* pptp.c: added some spacing to improve readability, removed
pointless "Step X" comments.
* pptp.c: fixed usage message: there should not be a "pppd" in the
command line.
Mon Nov 10 15:39:41 2003 James Cameron <[email protected]>
* pptp-linux-1.4.0-rc1 released.
Thu Oct 23 12:48:54 2003 James Cameron <[email protected]>
* pptp_callmgr.c (callmgr_main): if connection fails, pptp enters
a CPU loop calling select() with no file descriptors set, and
being given EBADF. Introduced by yesterday's modifications.
Correct code to detect this situation and break the main loop.
Wed Oct 22 13:02:04 2003 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_call_open): add an assertion to prevent a call
open attempt while the control connection is not established.
* pptp_callmgr.c (callmgr_main): avoid accepting a UNIX socket
connection and therefore calling pptp_call_open() if the control
connection has not yet been established.
* pptp_ctrl.c (pptp_conn_established): add function for
pptp_callmgr.c to use to determine if the control connection has
been established.
TODO: if a connection reply is not received, what happens?
Reported by: John BouAntoun
Mon Sep 8 10:33:41 2003 James Cameron <[email protected]>
* pptp.c: fix for compile on OpenBSD. From: Waldemar Brodkorb
Mon Aug 18 12:12:00 2003 Chris Wilson <[email protected]>
* pptp.c pptp_gre.c util.h: add log level control, to increase
or reduce verbosity of log messages, for debugging and for people
who have lossy connections.
Thu Aug 7 12:20:09 2003 James Cameron <[email protected]>
* pptp_gre.c (decaps_gre): fix reporting of packet loss.
From: Chris Wilson
Wed Jun 25 12:59:28 2003 Rein Klazes <[email protected]>
* pptp_callmgr.c: Wait for the replies on our Call-Clear-Request's and
Stop-Control-Connection-Request's.
* pptp_ctrl.c: small tweak in a message about non existant call:
report the received call ID's.
Sun Jun 22 19:08:14 2003 Rein Klazes <[email protected]>
* pptp_ctrl.c: Log the buffering and sending of ALL control
messages (except Echo messages and Replies of course).
Change the way the sending of these messages is done. The
original way was to first put them into a buffer ( in
pptp_send_ctrl_packet()) and at some later write the buffered
bytes to the socket ( in pptp_write_some()). Now
pptp_send_ctrl_packet first attempts to write the packet directly.
Only it the write() does not write all of the bytes, the remaining
ones are buffered. This should help to track bugs in this area (like
one sending two Start-Control-Request's).
Thu Jun 19 09:09:53 2003 Rein Klazes <[email protected]>
* pptp_ctrl.c: Improve logging of received control packets:
Move duplicated code to report on Result codes and General errors
to a separate function; Verbosely report error codes embedded in
start-control-connection replies; Translated some French comment;
Log when an unexpected Outgoing Call Reply is received; Log the
receipt of ALL control messages (except in case of echo
request/reply packets of which only the first 10 are logged);
Shorten the name of the function "pptp_dispatch_ctrl_packet" to
"ctrlp_disp", 25 characters is just too much in the log files.
Thu Jun 19 10:11:26 2003 Jan Pieter <[email protected]>
* Makefile (uninstall): include uninstall target, and a minor fix
to dist.
Wed Jun 18 12:19:09 2003 Rein Klazes <[email protected]>
* pptp_gre.c: Instead of logging the (a)synchronous mode
of ppp, only issue a warning when it conflicts with the
mode of pptp.
Comparing two sequence numbers for(in)equality is safe even when
a wrap-around has occurred. This contrasts with comparing for
smaller/bigger. Remove a few unneeded tests for wrap-around.
Tue Jun 17 19:40:41 2003 Rein Klazes <[email protected]>
* dirutil.c, ppp_fcs.c, pptp.c, pptp_gre.c, util.c, vector_test.c,
* pptp_ctrl.c, pptp_callmgr.c, vector.c : reformat code with
standard 4 spaced indents, uniform function headings and some
general tidying up. Patches have been separated in "diff -w"
invariant patches that should be safe and others that may be
not so safe.
Wed Jun 11 14:06:21 2003 Rein Klazes <[email protected]>
* pptp_gre.c: When a timeout is specified in the select call
make it always non-zero. Making this call block makes it likely
that pppd will run before the select returns. This results in a
big reduction in transmitted ack-only packets (number down from
40% to 0.8% of received packets on my system).
Tue Jun 11 18:42:00 2003 James Cameron <[email protected]>
* pptp-linux-1.3.1 released.
Tue Jun 10 13:53:00 2003 Chris Wilson <[email protected]>
* pptp_callmgr.c: fixed a bug with call manager socket naming,
introduced since 1.2.0, which caused confusing problems when
trying to open more than one tunnel from the same machine.
Tue Jun 10 18:43:34 2003 James Cameron <[email protected]>
* pptp-linux-1.3.0 released.
Tue Jun 3 19:16:52 2003 James Cameron <[email protected]>
* pptp.8, pptp.c: change SIGHUP to SIGUSR1 for dumping stats.
Tue May 20 13:20:00 2003 Chris Wilson <[email protected]>
* pptp.c: rewrote command-line usage information, to increase
clarity and usefulness, and to describe various command-line
options which have been added recently.
Fri May 23 20:52:05 2003 Rein Klazes <[email protected]>
* pptp_ctrl.c: increase the verbosity of the log message at the
receipt of a Call Disconnect Notification.
Mon May 12 16:56:14 2003 James Cameron <[email protected]>
* Makefile: don't install the manpage with execute permission,
swap LDFLAGS and LIBS so that one can say 'make LDFLAGS=-s' to
create a stripped versions of the executables, introduce the
optimization flag as a make variable, so that one can say 'make
DEBUG= OPTIMIZE=-O2 LDFLAGS=-s'. From: Peter Breitenlohner
Tue Apr 29 19:13:33 2003 James Cameron <[email protected]>
* Makefile (dist): remove CVS directory from distribution.
Reported by: Ola Lundqvist
Tue Apr 15 10:28:00 2003 Chris Wilson <[email protected]>
* pptp.c, pptp_gre.c, pptp_gre.h: Added GRE statistics counters
and RTT calculation, which can be dumped to the syslog by sending
a SIGHUP to the GRE-to-PPP gateway process.
Mon Apr 14 11:57:00 2003 Chris Wilson <[email protected]>
* pptp_gre.c: Fixed one case where an ACK could be immediately
followed by a data packet, they should be combined into a
single packet.
Sat Mar 8 2003 15:19:12 2003 Rein Klazes <[email protected]>
* pptp_gre.c, pqueue.c: Actually copy the packet into a new entry
in the packet queue, fixing "unknown protocol" error messages;
Change the program logic making it obvious that there is not a
memory leak;
Restore the "buffering out-of-order packet" log messages, so we
have a chance to notice any more side effects.
Mon Feb 17 09:18:30 2003 James Cameron <[email protected]>
* pptp_callmgr.c, pptp.c, Makefile: compile call manager from
Makefile rather than include from pptp.c. From: Jan Pieter
Sat Feb 15 21:32:42 2003 James Cameron <[email protected]>
* pptp_ctrl.c, pptp_msg.h: move code out of .h file and into .c
file. From: Jan Pieter <[email protected]>
Sat Feb 15 17:34:38 2003 James Cameron <[email protected]>
* pptp.c: add include fixes for Apple MacOS X as contributed by an
anonymous donor.
Sat Feb 15 14:59:20 2003 James Cameron <[email protected]>
* pptp.c, pptp_callmgr.c, pptp_gre.c: add localbind option to
support multiple clients from separate alias IP addresses.
From: Yury Tarasievich, with contributions by Ed Marcotte.
Fri Feb 14 10:11:27 2003 James Cameron <[email protected]>
* pptp-linux-1.2.0 released.
Fri Feb 14 16:08:26 CET 2003 Rein Klazes <[email protected]>
* pptp_ctrl.c, pptp_msg.h: tweak the outgoing call reply messages
once more. Print the error text that comes with the result code.
* pptp.c: close all unused file descriptors belonging to the pty.
* pptp_gre.c: Convert received acknowledgement numbers from network
to host order.
Mon Jan 20 11:46 2003 Chris Wilson <[email protected]>
* pqueue.c, pqueue.h: changed "expires" field of pqueue entry to a
struct timeval for microsecond accuracy (in theory =)
* pptp_gre.c: use queue head expiry time as the upper bound on how
long we block waiting for data from the network or pppd
* pptp.c: allow setting of packet timeout with sub-second
accuracy, print error message to stderr and exit if timeout out of
range
Mon Jan 13 10:28 2003 Chris Wilson <[email protected]>
* pqueue.c, pqueue.h: added freelist support for packet queue,
From: Kai Poitschke <[email protected]>. Should help to
prevent memory fragmentation and perhaps improve performance a
little.
* pqueue.c: wrap some log() statements with DEBUG_CMD, should
improve performance (thanks to Kai Poitschke)
* pptpd.c: bugfix for --log-string option: make a copy of the
string with strdup, because optarg will be destroyed
Wed Jan 15 14:16:27 2003 James Cameron <[email protected]>
* AUTHORS, DEVELOPERS, NEWS, README, TODO, USING: add or move CVS
header to tail.
* DEVELOPERS: change IRC server name to new alias.
* AUTHORS: change a few addresses.
* INSTALL: rewrite.
* README, USING: review and adjust, minor changes.
* Makefile (install): add MANDIR and man page.
Thu Jan 2 11:28:41 2003 James Cameron <[email protected]>
* pptp_gre.c: fix response to dropped packets. From: Rein Klazes.
Thu Jan 2 09:11:33 2003 James Cameron <[email protected]>
* pptp.8: the IP address should be before the option. From: Rein
Klazes
Mon Dec 30 15:57:48 2002 James Cameron <[email protected]>
* Makefile (install): add install target.
Mon Dec 9 08:52:56 2002 James Cameron <[email protected]>
* pptp_callmgr.c, pptp.c: close stderr after becoming daemon,
otherwise ssh sessions, CGI scripts, or other programs that start
pptp don't exit properly; they are held up until the pptp
processes terminate and close stderr.
Thu Nov 21 08:41:39 2002 James Cameron <[email protected]>
* pptp_gre.c: log return value from the read of the GRE socket as
a signed number as well.
Wed Nov 20 11:21:48 CET 2002 Rein Klazes <[email protected]>
* pptp_gre.c: log return value from the read of the pty as a signed
number.
* pptp_ctrl.c: change the log message to clarify that error codes in a
outgoing call reply come from the server, not the client.
Wed Nov 20 16:07:30 2002 James Cameron <[email protected]>
* Makefile (dist): adjust distribution target to include new files
since prior use.
Wed Nov 20 15:17:12 2002 James Cameron <[email protected]>
* pptp_gre.c: hid many packet reordering log calls in an ifdef,
added a hint as to cause of EIO on read of the pty.
Fri Oct 11 15:44 BST 2002 Chris Wilson <[email protected]>
* pptp.c util.c util.h: added "--logstring" option to help identify
connections in syslog output where multiple connections are made
from the same host.
Wed Oct 02 10:31 BST 2002 Chris Wilson <[email protected]>
* pptp_gre.c pqueue.c: changed some "log" statements to "warn" to
reflect the severity of the condition, allowing much better filtering
* util.c: changed _warn to log at WARNING, and _fatal at CRIT level
* pptp_gre.c: disabled logging of individual accepted packets
* pptp_gre.c: removed a potential NULL pointer dereference crash
* pptp_gre.c: fixed the select-timeout check for packets in the queue
* pqueue.h: increased window size to 300 following testing
* pptp.c: added command-line parameter "--timeout" to set the
lost packet timeout
Fri Aug 30 09:55:05 CEST 2002 Rein Klazes <[email protected]>
pptp_gre.c: Try to send more ACK's piggy backed on data packets.
Previously if there were any outstanding ACK's to be sent, the
program used a non-blocking select (timeout zero) to see if
any data packets are available. In most cases there will be none,
since the time passed since the last read is too short and an ACK
without data will be sent.
This change allows one outstanding ACK, for at most 0.5 second,
multiple outstanding ACK's are treated as before.
Tests show that this gives a big reduction in the number of
sent packets.
Fri Aug 30 09:15:35 CEST 2002 Rein Klazes <[email protected]>
* pptp_gre.c: Sequence numbers of sent gre packets should start
with 1.
Mon Aug 26 10:56:42 CEST 2002 Rein Klazes <[email protected]>
* pptp.c pptp_gre.c pptp_gre.h: added "--sync" option to work
in combination with the pppd sync option. In synchronous mode
checksum calculations and (un-)escaping of control characters
become unnecessary. This results in big CPU usage reduction.
Mon Aug 26 08:53:45 CEST 2002 Rein Klazes <[email protected]>
* pptp.c: fix bug in command line options parsing (misplaced break
in switch statement).
Wed Aug 21 10:57:01 2002 James Cameron <[email protected]>
* pptp.c: add handler for SIGCHLD.
From: Peter Surda <[email protected]>
Thu Aug 15 09:30:00 2002 Chris Wilson <[email protected]>
* pqueue.h: increased window size following James' tests
* pptp_gre.c: check for errors while dequeueing packets
Wed Aug 14 20:02:39 2002 James Cameron <[email protected]>
* pptp.c, pptp_gre.c, pqueue.c: packet re-ordering bugfixes
following distributed testing:
- Moved daemon() call to run on GRE gateway process only, and not
if running as pppd pty
- Make select() timeout after 1 second if there is data in the
queue, to prevent the queue from having to wait forever
- Added log messages for accepting individual packets (noisy!)
and for timeouts on missing packets
- Fixed a bug with the packet queue (append to tail was broken)
- Removed unused code from pqueue.c
From: [email protected]
Wed Aug 14 11:14:05 2002 James Cameron <[email protected]>
* pqueue.c, pqueue.h, pptp_gre.c: major changes to support packet
re-ordering.
Queueing
Packets are added to the queue by decaps_gre if their sequence
number is higher than expected, but within the window. The default
window is defined as 30 packets.
Packets which are below the window (older than the most recent
packet read) or above the window (too far ahead) are discarded, to
protect against denial-of-service attacks.
Dequeueing
The new function dequeue_gre retrieves packets from the head of
the queue which are:
1. Next in sequence (unwrapped or wrapped)
2. Older than five seconds (assuming that the intermediate packets
have been lost by the network).
The function will continue to read packets from the head of the
queue until it finds one which doesn't match these criteria, and
then stop.
Limitations
There are some limitations with this patch:
- The receive window is hardcoded at 30 packets. I couldn't see
where to get the negotiated and/or current window size from.
- The timeout is hardcoded at 5 seconds. A packet which was
received and queued within the window, but which should have been
preceded by other packets which never appeared, will be accepted
anyway after this time (increasing the sequence number to its
own).
- There may be memory leaks or other bugs in the reordering code.
* pqueue.c, pqueue.h, Makefile (PPTP_OBJS, PPTP_DEPS): add two new
files to the pptp executable. pqueue.c implements the packet queue
used by the reordering code, and pqueue.h describes its public
interface. The queue is implemented as a linked list. This is
required for reordering.
* pptp.c: Add a new command-line option, --debug. Prevents pptp
from going into the background.
Change to call the daemon(3) function to change the current
directory and close the standard file descriptors. This prevents a
shell from hanging open if pptp is started remotely.
* Makefile (CFLAGS): reduce the optimisation level (gcc's -O flag)
to zero (none), to make debugging easier.
* pptp.c (get_ip_address): avoid reporting h_errno value.
From: [email protected]
Thu Jul 18 12:26:25 2002 James Cameron <[email protected]>
* pptp_gre.h, pptp_gre.c, pptp.c: bind the GRE socket early, by
calling the a function pptp_gre_bind. Also changed prototype of
pptp_gre_copy. Fixes ICMP Unreachable bug:
<1026868263.2855.67.camel@jander> 16th July 2002.
From: [email protected]
Thu May 30 18:28:02 2002 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_call_open): do translation to network byte
order after limit checking of phone number.
From: [email protected]
2002-05-13 08:14:40 Muli Ben-Yehuda <[email protected]>
* TODO: remove 'remove setjmp/longjmp' TODO item.
* pptp.c: change comment re volatile qualifiers.
* pptp_callmgr.c: remove unused function 'conn_callback' and
change comment re volatile qualifiers.
Thu Apr 4 09:34:10 2002 James Cameron <[email protected]>
* pptp_ctrl.c: correct spelling error.
From: [email protected]
2002-03-30 13:13:52 mulix <[email protected]>
* USING: change URL for bezeq adsl howto.
* pptp.c: (get_ip_address): if the user runs 'pptp --quirks ...'
instead of 'pptp hostname', we'll get here and then give a verbose
error message.
Mon Mar 11 10:21:00 2002 mulix <[email protected]>
* Makefile (all): make config.h before making $(PPTP_BIN).
* Makefile (config.h): truncate the file if it exists before
inputing to it - '>' instead of '>>'
Mon Mar 11 12:48:16 2002 James Cameron <[email protected]>
* DEVELOPERS: add mailing lists.
* Makefile (CFLAGS): remove PPPD_BINARY and PPTP_LINUX_VERSION in
favour of a config.h file.
* Makefile (config.h): create config.h from Makefile variables
* Makefile (PPTP_DEPS): add config.h
* pptp.c: include config.h
* version.c: include config.h
* util.c (PROGRAM_NAME): no longer used by two programs, change
PROGRAM_NAME to default to pptp.
* Makefile (CFLAGS): remove -DPROGRAM_NAME
Fri Mar 8 11:56:00 2002 mulix <[email protected]>
* TODO: remove notes about compiler warnings, as all compiler
warnings are now gone.
* pptp.c (main): add volatile qualifier to some variables to
silence gcc warnings 'variable might be clobbered by longjmp or
vfork'. add note explaining why volatile and that it should be
removed when the longjmp is removed.
* pptp_callmgr.c (main): likewise.
* inststr.c (inststr): break up "ptr += strlen(++ptr)" which is
undefined behaviour into two expressions.
* pptp.c (main): initialize callmgr_sock to -1 since it might be
used uninitialized otherwise.
* pptp_ctrl.c (pptp_dispatch_ctrl_packet): #ifdef 0 two unused
variables referring to the current packet, which should not be
simply erased, as we might want to use them in the future.
* util.c: add missing #include.
Fri Mar 8 21:11:17 2002 James Cameron <[email protected]>
* DEVELOPERS: new file.
Fri Mar 8 10:12:28 2002 James Cameron <[email protected]>
* NEWS: convert to newest first format to comply with GNU Coding
Standards, The NEWS File.
Fri Mar 8 09:01:22 2002 James Cameron <[email protected]>
* pptp_ctrl.c (pptp_make_packet): Cisco PIX is generating a
non-complaint header with the reserved0 field not zero, causing
the connection to stop after 60 seconds.
From: Rein Klazes <[email protected]>
Fri Mar 8 08:56:30 2002 James Cameron <[email protected]>
* TODO: add compiler warnings note.
* NEWS: propogate summary of ChangeLog.
* AUTHORS: add names from mailing list contributions.
From: Rein Klazes <[email protected]>
* Makefile: remove pptp_callmgr binary
* debian/copyright: adjust pointer to current release.
* debian/rules, Makefile: remove pptp_callmgr binary now that pptp
forks and calls it without exec.
Sat Mar 2 04:04:37 2002 James Cameron <[email protected]>
* README: adopt new mailing lists and point to project web site.
* USING: include psuedo-tty activation instructions.
* Makefile: increment version, avoid clobbering editor backup
files on clean.
Fri Mar 1 12:13:03 2002 James Cameron <[email protected]>
* pptp_gre.c: move #include <sys/types.h> higher up
* pptp_gre.c, pptp_ctrl.c: change unsigned to unsigned int
* pptp.c: what we need from pty.h is in libutil.h for FreeBSD and
util.h for NetBSD (ideally this should be in autoconf)
* pptp.c: synchronisation changes
* orckit_quirks.c: #include <sys/types.h>
From: [email protected]
Fri Nov 23 14:42:07 2001 James Cameron <[email protected]>
* USING: reformat, add version header.
Tue Nov 20 11:01:10 2001 mulix <[email protected]>
* AUTHORS: add mulix.
* USING: add paragraph on quirks support.
* orckit_quirks.c: remove debugging call, rename functions and
variables consistently.
* pptp.c: (usage) remove debugging print.
* pptp_ctrl.c: when calling quirks hooks, check their return
values and warn if an error occurs.
* pptp_quirks.c: orckit_atur3_start_ctrl_conn was renamed
orckit_atur3_start_ctrl_conn_hook.
From: [email protected]
Tue Nov 20 17:01:10 2001 James Cameron <[email protected]>
* orckit_quirks.c, orckit_quirks.h: add quirks handling for orckit
adsl modems.
* pptp_quirks.c, pptp_quirks.h: add generic quirks handling.
* Makefile (PPTP_DEPS, PPTP_OBJS, CALLMGR_OBJS, CALLMGR_DEPS): add
quirks sources and objects.
* pptp_ctrl.c: add pptp_set_link, add code to adjust packets
depending on quirks.
* pptp.c (usage, long_options, main): add --quirks command line
option.
From: [email protected]
Tue Nov 20 16:45:35 2001 James Cameron <[email protected]>
* pptp_gre.c: enhance error message for bad FCS.