Author: arekm                        Date: Sun Aug 29 19:07:24 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- rel 2; reordering fixes from gentoo

---- Files affected:
packages/pptpd:
   pptpd.spec (1.57 -> 1.58) , pptpd-1.3.4-more-reodering-fixes.patch (NONE -> 
1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/pptpd/pptpd.spec
diff -u packages/pptpd/pptpd.spec:1.57 packages/pptpd/pptpd.spec:1.58
--- packages/pptpd/pptpd.spec:1.57      Sat May 22 18:39:50 2010
+++ packages/pptpd/pptpd.spec   Sun Aug 29 21:07:18 2010
@@ -3,7 +3,7 @@
 Summary(pl.UTF-8):     Serwer połączeń PPTP
 Name:          pptpd
 Version:       1.3.4
-Release:       1
+Release:       2
 License:       GPL
 Group:         Networking/Daemons
 Vendor:                Matthew Ramsay http://www.moretonbay.com/vpn/pptp.html
@@ -12,6 +12,7 @@
 Source1:       %{name}.init
 Patch0:                %{name}-install.patch
 Patch1:                %{name}-lib64.patch
+Patch2:                %{name}-1.3.4-more-reodering-fixes.patch
 URL:           http://www.poptop.org/
 BuildRequires: autoconf
 BuildRequires: automake
@@ -46,6 +47,7 @@
 %if "%{_lib}" == "lib64"
 %patch1 -p1
 %endif
+%patch2 -p1
 
 sed -i -e "s#/lib#/%{_lib}#g#" plugins/Makefile
 
@@ -102,6 +104,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.58  2010/08/29 19:07:18  arekm
+- rel 2; reordering fixes from gentoo
+
 Revision 1.57  2010/05/22 16:39:50  gotar
 - fixed Group
 

================================================================
Index: packages/pptpd/pptpd-1.3.4-more-reodering-fixes.patch
diff -u /dev/null packages/pptpd/pptpd-1.3.4-more-reodering-fixes.patch:1.1
--- /dev/null   Sun Aug 29 21:07:24 2010
+++ packages/pptpd/pptpd-1.3.4-more-reodering-fixes.patch       Sun Aug 29 
21:07:18 2010
@@ -0,0 +1,58 @@
+diff -Naur pptpd-1.3.4.orig/ChangeLog pptpd-1.3.4/ChangeLog
+--- pptpd-1.3.4.orig/ChangeLog 2007-04-16 04:32:45.000000000 +0400
++++ pptpd-1.3.4/ChangeLog      2007-05-01 21:42:12.000000000 +0400
+@@ -1,3 +1,17 @@
++Tue Apr 24 13:11:28 2007  Phil Oester  <[email protected]>
++
++      * pptpgre.c (decaps_gre): further testing has revealed a couple
++      more problems with the packet reordering/buffering code:
++
++      1) Some clients (notably the PPTP client) start their sequence
++         numbers at 1 instead of 0 as the RFC mandates.  My previous fix
++         caused problems with these clients.
++
++      2) Duplicate packets were causing corruption when they were placed
++         on the queue but never used -or- when they were placed on the
++         queue but already existed on the queue (i.e. they previously
++         arrived out of order).
++
+ Mon Apr 16 10:32:40 2007  James Cameron  <[email protected]>
+ 
+       * pptpd-1.3.4.tar.gz: released.
+diff -Naur pptpd-1.3.4.orig/NEWS pptpd-1.3.4/NEWS
+--- pptpd-1.3.4.orig/NEWS      2007-04-16 04:32:20.000000000 +0400
++++ pptpd-1.3.4/NEWS   2007-05-01 21:42:15.000000000 +0400
+@@ -1,3 +1,5 @@
++- fix reordering some more [Oester]
++
+ 1.3.4: released 2007-04-16
+ 
+ - fix two release critical packet reordering bugs [Oester]
+diff -Naur pptpd-1.3.4.orig/pptpgre.c pptpd-1.3.4/pptpgre.c
+--- pptpd-1.3.4.orig/pptpgre.c 2007-05-01 21:35:31.000000000 +0400
++++ pptpd-1.3.4/pptpgre.c      2007-05-01 21:41:17.000000000 +0400
+@@ -403,8 +403,13 @@
+                       stats.rx_truncated++;
+                       return 0;
+               }
+-              /* check for out-of-order sequence number */
+-              if (seq == gre.seq_recv + 1) {
++              /* check for out-of-order sequence number
++               * N.B.: some client implementations violate RFC 2637
++               * and start their sequence numbers at 1 instead of 0,
++               * so we have to introduce a kludge to deal with it.
++               * on wrap we may allow an out of order packet to pass
++               */
++              if (seq == gre.seq_recv + 1 || seq == 1) {
+                       if (pptpctrl_debug)
+                               syslog(LOG_DEBUG, "GRE: accepting packet #%d", 
+                                       seq);
+@@ -413,7 +418,7 @@
+                       stats.rx_accepted++;
+                       gre.seq_recv = seq;
+                       return cb(cl, buffer + ip_len + headersize, 
payload_len);
+-              } else if (seq == gre.seq_recv) {
++              } else if (!seq_greater(seq, gre.seq_recv)) {
+                       if (pptpctrl_debug)
+                               syslog(LOG_DEBUG,
+                                      "GRE: discarding duplicate or old packet 
#%d (expecting #%d)", 
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/pptpd/pptpd.spec?r1=1.57&r2=1.58&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to