summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Volkov <pva@gentoo.org>2007-05-03 13:04:21 +0000
committerPeter Volkov <pva@gentoo.org>2007-05-03 13:04:21 +0000
commit910fb6accfb88d4ae4036dd7d96749269fb7f03f (patch)
treeee577b09a1e487db1dbb3b9a6e9181c2e78e5d49 /net-dialup/pptpd
parentStable for HPPA (bug #176895). (diff)
downloadgentoo-2-910fb6accfb88d4ae4036dd7d96749269fb7f03f.tar.gz
gentoo-2-910fb6accfb88d4ae4036dd7d96749269fb7f03f.tar.bz2
gentoo-2-910fb6accfb88d4ae4036dd7d96749269fb7f03f.zip
Version bump.
(Portage version: 2.1.2.2)
Diffstat (limited to 'net-dialup/pptpd')
-rw-r--r--net-dialup/pptpd/ChangeLog8
-rw-r--r--net-dialup/pptpd/files/digest-pptpd-1.3.43
-rw-r--r--net-dialup/pptpd/files/pptpd-1.3.4-gentoo.patch57
-rw-r--r--net-dialup/pptpd/files/pptpd-1.3.4-more-reodering-fixes.patch58
-rw-r--r--net-dialup/pptpd/pptpd-1.3.4.ebuild58
5 files changed, 183 insertions, 1 deletions
diff --git a/net-dialup/pptpd/ChangeLog b/net-dialup/pptpd/ChangeLog
index d64cbdf25614..5c93cc83315f 100644
--- a/net-dialup/pptpd/ChangeLog
+++ b/net-dialup/pptpd/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-dialup/pptpd
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/pptpd/ChangeLog,v 1.26 2007/04/22 00:13:15 mrness Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/pptpd/ChangeLog,v 1.27 2007/05/03 13:04:21 pva Exp $
+
+*pptpd-1.3.4 (03 May 2007)
+
+ 03 May 2007; <pva@gentoo.org> +files/pptpd-1.3.4-gentoo.patch,
+ +files/pptpd-1.3.4-more-reodering-fixes.patch, +pptpd-1.3.4.ebuild:
+ Version bump.
22 Apr 2007; Alin Năstac <mrness@gentoo.org> pptpd-1.3.3.ebuild:
Use newinitd and newconfd (#174266).
diff --git a/net-dialup/pptpd/files/digest-pptpd-1.3.4 b/net-dialup/pptpd/files/digest-pptpd-1.3.4
new file mode 100644
index 000000000000..4030abc6bafa
--- /dev/null
+++ b/net-dialup/pptpd/files/digest-pptpd-1.3.4
@@ -0,0 +1,3 @@
+MD5 b38df9c431041922c997c1148bedf591 pptpd-1.3.4.tar.gz 240942
+RMD160 1c6c748bf9e81d223087998ee0cca821814d19f9 pptpd-1.3.4.tar.gz 240942
+SHA256 c23a9bdd219a0a36ae7ca20e7c9749f2efdcdbf108aabeeeb5066ba442ec88b6 pptpd-1.3.4.tar.gz 240942
diff --git a/net-dialup/pptpd/files/pptpd-1.3.4-gentoo.patch b/net-dialup/pptpd/files/pptpd-1.3.4-gentoo.patch
new file mode 100644
index 000000000000..36ebea76ecae
--- /dev/null
+++ b/net-dialup/pptpd/files/pptpd-1.3.4-gentoo.patch
@@ -0,0 +1,57 @@
+diff -Naur pptpd-1.3.4.orig/Makefile.am pptpd-1.3.4/Makefile.am
+--- pptpd-1.3.4.orig/Makefile.am 2007-04-16 04:53:53.000000000 +0400
++++ pptpd-1.3.4/Makefile.am 2007-05-01 21:29:15.000000000 +0400
+@@ -11,7 +11,7 @@
+ ## warning with -Wmissing-prototypes).
+ ## -Wmissing-prototypes removed (eg, Linux 2.2.6 headers
+ ## aren't up to it).
+-CFLAGS = -O2 -fno-builtin -Wall -DSBINDIR='"$(sbindir)"'
++CFLAGS += -fno-builtin -Wall -DSBINDIR='"$(sbindir)"'
+ #CFLAGS = -O2 -fno-builtin -Wall -ansi -DSBINDIR='"$(sbindir)"'
+ #CFLAGS = -O2 -fno-builtin -Wall -ansi -pedantic -Wmissing-prototypes -Werror -DSBINDIR='"$(sbindir)"'
+
+diff -Naur pptpd-1.3.4.orig/plugins/Makefile pptpd-1.3.4/plugins/Makefile
+--- pptpd-1.3.4.orig/plugins/Makefile 2006-08-03 06:02:01.000000000 +0400
++++ pptpd-1.3.4/plugins/Makefile 2007-05-01 21:29:15.000000000 +0400
+@@ -1,6 +1,5 @@
+ CC = gcc
+-COPTS = -O2 -g
+-CFLAGS = $(COPTS) -I.. -I../../include -fPIC
++CFLAGS += -I.. -I../../include -fPIC
+ LDFLAGS = -shared
+ LDADD = -lutil
+ INSTALL = install -o root
+diff -Naur pptpd-1.3.4.orig/pptpgre.c pptpd-1.3.4/pptpgre.c
+--- pptpd-1.3.4.orig/pptpgre.c 2007-04-16 04:21:02.000000000 +0400
++++ pptpd-1.3.4/pptpgre.c 2007-05-01 21:29:50.000000000 +0400
+@@ -405,9 +405,11 @@
+ }
+ /* check for out-of-order sequence number */
+ if (seq == gre.seq_recv + 1) {
++#ifdef LOG_DEBUG_GRE_ACCEPTING_PACKET
+ if (pptpctrl_debug)
+ syslog(LOG_DEBUG, "GRE: accepting packet #%d",
+ seq);
++#endif
+ stats.rx_accepted++;
+ gre.seq_recv = seq;
+ return cb(cl, buffer + ip_len + headersize, payload_len);
+diff -Naur pptpd-1.3.4.orig/pqueue.c pptpd-1.3.4/pqueue.c
+--- pptpd-1.3.4.orig/pqueue.c 2005-08-03 12:53:22.000000000 +0400
++++ pptpd-1.3.4/pqueue.c 2007-05-01 21:29:15.000000000 +0400
+@@ -7,13 +7,11 @@
+ #include "pqueue.h"
+
+ #ifdef DEBUG_PQUEUE
+-#define DEBUG_ON 1
++# define DEBUG_CMD(_a) { _a }
+ #else
+-#define DEBUG_ON 0
++# define DEBUG_CMD(_a)
+ #endif
+
+-#define DEBUG_CMD(_a) if (DEBUG_ON) { _a }
+-
+ #define MIN_CAPACITY 128 /* min allocated buffer for a packet */
+
+ static int pqueue_alloc (int seq, unsigned char *packet, int packlen, pqueue_t **new);
diff --git a/net-dialup/pptpd/files/pptpd-1.3.4-more-reodering-fixes.patch b/net-dialup/pptpd/files/pptpd-1.3.4-more-reodering-fixes.patch
new file mode 100644
index 000000000000..67da66e7a785
--- /dev/null
+++ b/net-dialup/pptpd/files/pptpd-1.3.4-more-reodering-fixes.patch
@@ -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 <kernel@linuxace.com>
++
++ * 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 <quozl@us.netrek.org>
+
+ * 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) {
+ #ifdef LOG_DEBUG_GRE_ACCEPTING_PACKET
+ if (pptpctrl_debug)
+ syslog(LOG_DEBUG, "GRE: accepting packet #%d",
+@@ -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)",
diff --git a/net-dialup/pptpd/pptpd-1.3.4.ebuild b/net-dialup/pptpd/pptpd-1.3.4.ebuild
new file mode 100644
index 000000000000..4fdca671f480
--- /dev/null
+++ b/net-dialup/pptpd/pptpd-1.3.4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/pptpd/pptpd-1.3.4.ebuild,v 1.1 2007/05/03 13:04:21 pva Exp $
+
+inherit eutils autotools flag-o-matic
+
+DESCRIPTION="Linux Point-to-Point Tunnelling Protocol Server"
+SRC_URI="mirror://sourceforge/poptop/${P}.tar.gz"
+HOMEPAGE="http://www.poptop.org/"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="tcpd gre-extreme-debug"
+
+DEPEND="net-dialup/ppp
+ tcpd? ( sys-apps/tcp-wrappers )"
+
+src_unpack() {
+ unpack ${A}
+
+ epatch "${FILESDIR}/${P}-gentoo.patch"
+ epatch "${FILESDIR}/${P}-more-reodering-fixes.patch"
+
+ #Match pptpd-logwtmp.so's version with pppd's version (#89895)
+ local PPPD_VER=`best_version net-dialup/ppp`
+ PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR}
+ PPPD_VER=${PPPD_VER%%[_-]*} # main version without beta/pre/patch/revision
+ sed -i -e "s:\\(#define[ \\t]*VERSION[ \\t]*\\)\".*\":\\1\"${PPPD_VER}\":" "${S}/plugins/patchlevel.h"
+
+ eautomake
+}
+
+src_compile() {
+ use gre-extreme-debug && append-flags "-DLOG_DEBUG_GRE_ACCEPTING_PACKET"
+ local myconf
+ use tcpd && myconf="--with-libwrap"
+ econf --enable-bcrelay \
+ ${myconf} || die "configure failed"
+ emake COPTS="${CFLAGS}" || die "make failed"
+}
+
+src_install () {
+ einstall || die "make install failed"
+
+ insinto /etc
+ doins samples/pptpd.conf
+
+ insinto /etc/ppp
+ doins samples/options.pptpd
+
+ newinitd "${FILESDIR}/pptpd-init" pptpd
+ newconfd "${FILESDIR}/pptpd-confd" pptpd
+
+ dodoc AUTHORS ChangeLog NEWS README* TODO
+ docinto samples
+ dodoc samples/*
+}