aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net/poptop/Makefile2
-rw-r--r--net/poptop/files/patch-pptpctrl.c53
-rw-r--r--net/poptop/files/patch-pptpd.c34
3 files changed, 78 insertions, 11 deletions
diff --git a/net/poptop/Makefile b/net/poptop/Makefile
index d497fd6175c6..4be8c8eeb54b 100644
--- a/net/poptop/Makefile
+++ b/net/poptop/Makefile
@@ -7,6 +7,7 @@
PORTNAME= poptop
PORTVERSION= 1.3.4
+PORTREVISION= 1
CATEGORIES= net
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
@@ -17,6 +18,7 @@ COMMENT= Windows 9x compatible PPTP (VPN) server
USE_GMAKE= yes
GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --mandir=${MANPREFIX}/man
MAKE_ARGS= ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
AUTOHEADER="${TRUE}"
diff --git a/net/poptop/files/patch-pptpctrl.c b/net/poptop/files/patch-pptpctrl.c
index 08cf87c02758..361c6ecd5545 100644
--- a/net/poptop/files/patch-pptpctrl.c
+++ b/net/poptop/files/patch-pptpctrl.c
@@ -1,15 +1,53 @@
---- pptpctrl.c.orig Mon Jan 24 23:04:13 2005
-+++ pptpctrl.c Sat May 6 12:48:55 2006
-@@ -742,7 +742,6 @@
+--- pptpctrl.c.orig Fri Dec 8 01:01:40 2006
++++ pptpctrl.c Tue Jul 31 07:56:19 2007
+@@ -150,8 +150,13 @@
+ syslog(LOG_DEBUG, "CTRL: remote address = %s", pppRemote);
+ if (*speed)
+ syslog(LOG_DEBUG, "CTRL: pppd speed = %s", speed);
++#if BSDUSER_PPP
++ if (*pppdxfig)
++ syslog(LOG_DEBUG, "CTRL: BSD userland ppp system label = %s", pppdxfig);
++#else
+ if (*pppdxfig)
+ syslog(LOG_DEBUG, "CTRL: pppd options file = %s", pppdxfig);
++#endif
+ }
+
+ addrlen = sizeof(addr);
+@@ -693,14 +698,19 @@
+
+ /* options for BSDUSER_PPP
+ *
+- * ignores IP addresses, config file option, speed
+- * fix usage info in pptpd.c and configure script if this changes
++ * Ignore IP addresses and line speed
++ * Use -o or --option string as PPP system label
++ * Usage info in pptpd.c and configure script have been updated to
++ * reflect this change
+ *
+ * IP addresses can be specified in /etc/ppp/ppp.secret per user
+ */
+ pppd_argv[an++] = "-direct";
+- pppd_argv[an++] = "pptp"; /* XXX this is the system name */
+- /* should be dynamic - PMG */
++ if (*pppdxfig) {
++ pppd_argv[an++] = pppdxfig;
++ } else {
++ pppd_argv[an++] = "pptp"; /* XXX this is the system label */
++ }
+
+ #elif SLIRP
+
+@@ -764,7 +774,6 @@
sprintf(pppInterfaceIPs, "%s:%s", pppaddrs[0], pppaddrs[1]);
pppd_argv[an++] = pppInterfaceIPs;
}
-#endif
-
+
if (!noipparam) {
pppd_argv[an++] = "ipparam";
-@@ -751,10 +750,11 @@
-
+@@ -773,10 +782,12 @@
+
if (pptp_logwtmp) {
pppd_argv[an++] = "plugin";
- pppd_argv[an++] = "/usr/lib/pptpd/pptpd-logwtmp.so";
@@ -17,7 +55,8 @@
pppd_argv[an++] = "pptpd-original-ip";
pppd_argv[an++] = inet_ntoa(inetaddrs[1]);
}
++
+#endif
-
+
/* argv arrays must always be NULL terminated */
pppd_argv[an++] = NULL;
diff --git a/net/poptop/files/patch-pptpd.c b/net/poptop/files/patch-pptpd.c
index 0f8c68cb25d3..c45f48c77063 100644
--- a/net/poptop/files/patch-pptpd.c
+++ b/net/poptop/files/patch-pptpd.c
@@ -1,6 +1,15 @@
---- pptpd.c.orig Fri Oct 21 12:10:41 2005
-+++ pptpd.c Fri Oct 21 12:12:30 2005
-@@ -109,13 +109,13 @@
+--- pptpd.c.orig Tue Sep 5 01:17:25 2006
++++ pptpd.c Tue Jul 31 08:19:38 2007
+@@ -98,18 +98,21 @@
+ printf(" [-i] [--noipparam] Suppress the passing of the client's IP address\n");
+ printf(" to PPP, which is done by default otherwise.\n");
+ printf(" [-l] [--listen x.x.x.x] Specifies IP of local interface to listen to.\n");
+-#if !defined(BSDUSER_PPP)
++#ifdef BSDUSER_PPP
++ printf(" [-o] [--option file] Specifies the userland PPP system label to use\n");
++ printf(" (default is pptp).\n");
++#else
+ printf(" [-o] [--option file] Specifies the PPP options file to use\n");
printf(" (default is /etc/ppp/options).\n");
#endif
printf(" [-p] [--pidfile file] Specifies the file to write the process ID to\n");
@@ -16,4 +25,21 @@
+ printf(" (default is %s).\n",STIMEOUT_DEFAULT);
printf(" [-v] [--version] Displays the pptpd version number.\n");
printf(" [-w] [--logwtmp] Update wtmp as users login.\n");
-
+ printf(" [-C] [--connections n] Limit on number of connections.\n");
+@@ -375,11 +378,16 @@
+ return 1;
+ }
+ /* check that the PPP options file is readable */
++ /* If -o or --option is being used to specify BSD userland
++ PPP system label, it makes no sense to check the option string to
++ see if it is the name of a readable file. */
++#if !defined(BSDUSER_PPP)
+ if (pppdoptstr && access(pppdoptstr, R_OK) < 0) {
+ syslog(LOG_ERR, "MGR: PPP options file %s not readable",
+ pppdoptstr);
+ return 1;
+ }
++#endif
+ #ifdef BCRELAY
+ /* check that the bcrelay binary is executable */
+ if (bcrelay && access(BCRELAY_BIN, X_OK) < 0) {