diff options
-rw-r--r-- | net/poptop/Makefile | 2 | ||||
-rw-r--r-- | net/poptop/files/patch-pptpctrl.c | 53 | ||||
-rw-r--r-- | net/poptop/files/patch-pptpd.c | 34 |
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) { |