diff options
author | Alin Năstac <mrness@gentoo.org> | 2006-04-21 07:17:16 +0000 |
---|---|---|
committer | Alin Năstac <mrness@gentoo.org> | 2006-04-21 07:17:16 +0000 |
commit | 7fbab0f6e28ad685b2b845b0ecf1c5d9fae674c1 (patch) | |
tree | 56ac25002b48469c3903861fcc0f789a3d1348ed /net-dialup | |
parent | Add USE=nptl to build with TLS. Note that AIGLX will not work unless both xor... (diff) | |
download | gentoo-2-7fbab0f6e28ad685b2b845b0ecf1c5d9fae674c1.tar.gz gentoo-2-7fbab0f6e28ad685b2b845b0ecf1c5d9fae674c1.tar.bz2 gentoo-2-7fbab0f6e28ad685b2b845b0ecf1c5d9fae674c1.zip |
Version bump. The new version fixes a bug in MD5 code that caused pppoe-server to segfault on 64-bit arches (#130571).
(Portage version: 2.0.54)
Diffstat (limited to 'net-dialup')
-rw-r--r-- | net-dialup/rp-pppoe/ChangeLog | 11 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/Manifest | 15 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/files/digest-rp-pppoe-3.8 | 2 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/files/rp-pppoe-3.8-gentoo-netscripts.patch | 150 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/files/rp-pppoe-3.8-plugin-options.patch | 33 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/files/rp-pppoe-3.8-username-charset.patch | 58 | ||||
-rw-r--r-- | net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild | 89 |
7 files changed, 347 insertions, 11 deletions
diff --git a/net-dialup/rp-pppoe/ChangeLog b/net-dialup/rp-pppoe/ChangeLog index 2d364ef13003..06d232dd86fd 100644 --- a/net-dialup/rp-pppoe/ChangeLog +++ b/net-dialup/rp-pppoe/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for net-dialup/rp-pppoe # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-dialup/rp-pppoe/ChangeLog,v 1.68 2006/04/01 07:53:24 mrness Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-dialup/rp-pppoe/ChangeLog,v 1.69 2006/04/21 07:17:16 mrness Exp $ + +*rp-pppoe-3.8 (21 Apr 2006) + + 21 Apr 2006; Alin Nastac <mrness@gentoo.org> + +files/rp-pppoe-3.8-gentoo-netscripts.patch, + +files/rp-pppoe-3.8-plugin-options.patch, + +files/rp-pppoe-3.8-username-charset.patch, +rp-pppoe-3.8.ebuild: + Version bump. The new version fixes a bug in MD5 code that caused + pppoe-server to segfault on 64-bit arches (#130571). 01 Apr 2006; Alin Nastac <mrness@gentoo.org> rp-pppoe-3.7.ebuild: Bail out in pkg_setup if the old /etc/init.d/rp-pppoe still exist. diff --git a/net-dialup/rp-pppoe/Manifest b/net-dialup/rp-pppoe/Manifest index 31274eb74ca3..5ee82848720e 100644 --- a/net-dialup/rp-pppoe/Manifest +++ b/net-dialup/rp-pppoe/Manifest @@ -1,9 +1,7 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - MD5 f7cac15caab5212393b334d862cfce8b ChangeLog 10522 MD5 d455684124113e2349a9c674b55b493e files/digest-rp-pppoe-3.5-r11 125 MD5 25bde10ecb7d85440305687fcb0be656 files/digest-rp-pppoe-3.7 125 +MD5 dd3a8ccad00339f9497b4ed3c057cddb files/digest-rp-pppoe-3.8 125 MD5 3ec97394e888b357e2c6020b3ab0155c files/rp-pppoe-3.5-dsa-557.patch 5581 MD5 4e9fa8d65d286e5e37e953e7c822c70e files/rp-pppoe-3.5-gentoo-netscripts.patch 5180 MD5 d6678e5d124fa519195709326558af27 files/rp-pppoe-3.5-on-demand-with-plugin.patch 1058 @@ -12,13 +10,10 @@ MD5 1136fc6ab8a39846868abeecc59addfc files/rp-pppoe-3.7-gentoo-netscripts.patch MD5 10c9907b8295cb2bde533dc839be54dd files/rp-pppoe-3.7-on-demand-with-plugin.patch 1062 MD5 d33f0962a5a8171533812f5701181421 files/rp-pppoe-3.7-plugin-options.patch 554 MD5 161308d48042efd0ade491fd5429e4bc files/rp-pppoe-3.7-username-charset.patch 1946 +MD5 338e60715ff505051dc5b3549936124f files/rp-pppoe-3.8-gentoo-netscripts.patch 5218 +MD5 1938913a9606e60e4fa510512e8f206e files/rp-pppoe-3.8-plugin-options.patch 1364 +MD5 1d75436eae3217598ce13b690f101978 files/rp-pppoe-3.8-username-charset.patch 1946 MD5 ec2f84816306825d125d0c01bd86758d metadata.xml 163 MD5 d728978d28ed0d7042bac5857e5f62ff rp-pppoe-3.5-r11.ebuild 2404 MD5 936cb5038d73310209fb5d60f2b0478a rp-pppoe-3.7.ebuild 3087 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.2.2 (GNU/Linux) - -iD8DBQFELjGFjG8pv1lIUX4RApR4AKChDeg9yzodirxg3BjR3/+xWO1m+ACgyha8 -28IeZOCMP3upXamymolhbYw= -=Http ------END PGP SIGNATURE----- +MD5 e6cc7eb144eb98e611891ea36512c493 rp-pppoe-3.8.ebuild 2945 diff --git a/net-dialup/rp-pppoe/files/digest-rp-pppoe-3.8 b/net-dialup/rp-pppoe/files/digest-rp-pppoe-3.8 new file mode 100644 index 000000000000..f00eecc5ce85 --- /dev/null +++ b/net-dialup/rp-pppoe/files/digest-rp-pppoe-3.8 @@ -0,0 +1,2 @@ +MD5 848f6c3cafeb6074ffeb293c3af79b7c ppp-2.4.3.tar.gz 688092 +MD5 0e32760f498f9cde44081ee6aafc823b rp-pppoe-3.8.tar.gz 212931 diff --git a/net-dialup/rp-pppoe/files/rp-pppoe-3.8-gentoo-netscripts.patch b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-gentoo-netscripts.patch new file mode 100644 index 000000000000..c39e2014bd65 --- /dev/null +++ b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-gentoo-netscripts.patch @@ -0,0 +1,150 @@ +diff -Nru rp-pppoe-3.8.orig/configs/pppoe.conf rp-pppoe-3.8/configs/pppoe.conf +--- rp-pppoe-3.8.orig/configs/pppoe.conf 2006-04-02 17:29:41.000000000 +0300 ++++ rp-pppoe-3.8/configs/pppoe.conf 2006-04-21 10:04:20.369308000 +0300 +@@ -21,6 +21,9 @@ + # When you configure a variable, DO NOT leave spaces around the "=" sign. + + # Ethernet card connected to DSL modem ++# ++# NB: Gentoo overrides ETH when pppoe-start is called from the ++# networking scripts. This setting has no effect in that case. + ETH=eth1 + + # PPPoE user name. You may have to supply "@provider.com" Sympatico +@@ -86,8 +89,10 @@ + # $PIDFILE contains PID of pppoe-connect script + # $PIDFILE.pppoe contains PID of pppoe process + # $PIDFILE.pppd contains PID of pppd process +-CF_BASE=`basename $CONFIG` +-PIDFILE="/var/run/$CF_BASE-pppoe.pid" ++# ++# NB: Gentoo overrides PIDFILE when pppoe-start is run from the ++# networking scripts. This setting has no effect in that case. ++PIDFILE="/var/run/rp-pppoe.pid" + + # Do you want to use synchronous PPP? "yes" or "no". "yes" is much + # easier on CPU usage, but may not work for you. It is safer to use +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-connect.in rp-pppoe-3.8/scripts/pppoe-connect.in +--- rp-pppoe-3.8.orig/scripts/pppoe-connect.in 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-connect.in 2006-04-21 10:04:20.369308000 +0300 +@@ -62,12 +62,17 @@ + ;; + esac + +-if test ! -f "$CONFIG" -o ! -r "$CONFIG" ; then ++# In Gentoo, CONFIG is a named pipe when pppoe is started by the ++# network scripts. Testing -r is allowed; testing -f is not. ++if test ! -r "$CONFIG" ; then + echo "$0: Cannot read configuration file '$CONFIG'" >& 2 + exit 1 + fi +-export CONFIG +-. $CONFIG ++ ++# Read the named pipe (/dev/fd/foo) into a variable so we can use it ++# again later (since reading once from the pipe will exhaust it) ++CONFREAD=$(<$CONFIG) ++eval "$CONFREAD" + + PPPOE_PIDFILE="$PIDFILE.pppoe" + PPPD_PIDFILE="$PIDFILE.pppd" +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-start.in rp-pppoe-3.8/scripts/pppoe-start.in +--- rp-pppoe-3.8.orig/scripts/pppoe-start.in 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-start.in 2006-04-21 10:04:20.369308000 +0300 +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + # @configure_input@ + #*********************************************************************** + # +@@ -113,12 +113,17 @@ + ;; + esac + +-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then ++# In Gentoo, CONFIG is a named pipe when pppoe is started by the ++# network scripts. Testing -r is allowed; testing -f is not. ++if [ ! -r "$CONFIG" ] ; then + $ECHO "$ME: Cannot read configuration file '$CONFIG'" >& 2 + exit 1 + fi +-export CONFIG +-. $CONFIG ++ ++# Read the named pipe (/dev/fd/foo) into a variable so we can use it ++# again later (since reading once from the pipe will exhaust it) ++CONFREAD=$(<$CONFIG) ++eval "$CONFREAD" + + # Check for command-line overriding of ETH and USER + case "$#" in +@@ -145,11 +150,11 @@ + + # Start the connection in the background unless we're debugging + if [ "$DEBUG" != "" ] ; then +- $CONNECT "$@" ++ $CONNECT <(echo "$CONFREAD") + exit 0 + fi + +-$CONNECT "$@" > /dev/null 2>&1 & ++$CONNECT <(echo "$CONFREAD") >/dev/null 2>&1 & + CONNECT_PID=$! + + if [ "$CONNECT_TIMEOUT" = "" -o "$CONNECT_TIMEOUT" = 0 ] ; then +@@ -164,7 +169,7 @@ + # Monitor connection + TIME=0 + while [ true ] ; do +- @sbindir@/pppoe-status $CONFIG > /dev/null 2>&1 ++ @sbindir@/pppoe-status <(echo "$CONFREAD") >/dev/null 2>&1 + + # Looks like the interface came up + if [ $? = 0 ] ; then +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-status rp-pppoe-3.8/scripts/pppoe-status +--- rp-pppoe-3.8.orig/scripts/pppoe-status 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-status 2006-04-21 10:04:20.369308000 +0300 +@@ -28,12 +28,17 @@ + ;; + esac + +-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then ++# In Gentoo, CONFIG is a named pipe when pppoe is started by the ++# network scripts. Testing -r is allowed; testing -f is not. ++if [ ! -r "$CONFIG" ] ; then + echo "$0: Cannot read configuration file '$CONFIG'" >& 2 + exit 1 + fi + +-. $CONFIG ++# Read the named pipe (/dev/fd/foo) into a variable so we can use it ++# again later (since reading once from the pipe will exhaust it) ++CONFREAD=$(<$CONFIG) ++eval "$CONFREAD" + + PPPOE_PIDFILE="$PIDFILE.pppoe" + PPPD_PIDFILE="$PIDFILE.pppd" +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-stop.in rp-pppoe-3.8/scripts/pppoe-stop.in +--- rp-pppoe-3.8.orig/scripts/pppoe-stop.in 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-stop.in 2006-04-21 10:04:20.369308000 +0300 +@@ -31,12 +31,17 @@ + CONFIG=/etc/ppp/pppoe.conf + fi + +-if [ ! -f "$CONFIG" -o ! -r "$CONFIG" ] ; then ++# In Gentoo, CONFIG is a named pipe when pppoe is started by the ++# network scripts. Testing -r is allowed; testing -f is not. ++if [ ! -r "$CONFIG" ] ; then + echo "$ME: Cannot read configuration file '$CONFIG'" >& 2 + exit 1 + fi +-export CONFIG +-. $CONFIG ++ ++# Read the named pipe (/dev/fd/foo) into a variable so we can use it ++# again later (since reading once from the pipe will exhaust it) ++CONFREAD=$(<$CONFIG) ++eval "$CONFREAD" + + PPPOE_PIDFILE="$PIDFILE.pppoe" + PPPD_PIDFILE="$PIDFILE.pppd" diff --git a/net-dialup/rp-pppoe/files/rp-pppoe-3.8-plugin-options.patch b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-plugin-options.patch new file mode 100644 index 000000000000..dec2276aa0d1 --- /dev/null +++ b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-plugin-options.patch @@ -0,0 +1,33 @@ +diff -Nru rp-pppoe-3.8.orig/configs/pppoe.conf rp-pppoe-3.8/configs/pppoe.conf +--- rp-pppoe-3.8.orig/configs/pppoe.conf 2006-04-02 17:29:41.000000000 +0300 ++++ rp-pppoe-3.8/configs/pppoe.conf 2006-04-21 10:06:46.170420000 +0300 +@@ -115,7 +115,7 @@ + FIREWALL=NONE + + # Linux kernel-mode plugin for pppd. If you want to try the kernel-mode +-# plugin, use LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so ++# plugin, use LINUX_PLUGIN=rp-pppoe.so + LINUX_PLUGIN= + + # Any extra arguments to pass to pppoe. Normally, use a blank string +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-connect.in rp-pppoe-3.8/scripts/pppoe-connect.in +--- rp-pppoe-3.8.orig/scripts/pppoe-connect.in 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-connect.in 2006-04-21 10:06:58.951218750 +0300 +@@ -197,7 +197,7 @@ + + # If we're using kernel-mode PPPoE on Linux... + if test "$LINUX_PLUGIN" != "" ; then +- PLUGIN_OPTS="plugin $LINUX_PLUGIN nic-$ETH" ++ PLUGIN_OPTS="plugin $LINUX_PLUGIN" + if test -n "$SERVICENAME" ; then + PLUGIN_OPTS="$PLUGIN_OPTS rp_pppoe_service $SERVICENAME" + fi +@@ -295,7 +295,7 @@ + $SETSID $OVERRIDE_PPPD_COMMAND & + echo "$!" > $PPPD_PIDFILE + elif test "$LINUX_PLUGIN" != "" ; then +- $SETSID $PPPD $PPP_STD_OPTIONS $DEMAND & ++ $SETSID $PPPD $DEMAND $PPP_STD_OPTIONS & + echo "$!" > $PPPD_PIDFILE + else + $SETSID $PPPD pty "$PPPOE_CMD" \ diff --git a/net-dialup/rp-pppoe/files/rp-pppoe-3.8-username-charset.patch b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-username-charset.patch new file mode 100644 index 000000000000..b504e849cf31 --- /dev/null +++ b/net-dialup/rp-pppoe/files/rp-pppoe-3.8-username-charset.patch @@ -0,0 +1,58 @@ +diff -Nru rp-pppoe-3.8.orig/scripts/pppoe-setup.in rp-pppoe-3.8/scripts/pppoe-setup.in +--- rp-pppoe-3.8.orig/scripts/pppoe-setup.in 2006-04-02 17:29:42.000000000 +0300 ++++ rp-pppoe-3.8/scripts/pppoe-setup.in 2006-04-21 10:09:08.411309500 +0300 +@@ -86,11 +86,13 @@ + $ECHO "USER NAME" + $ECHO "" + printf "%s" ">>> Enter your PPPoE user name (default $USER): " +- read U ++ read Uu + +- if [ "$U" = "" ] ; then +- U="$USER" ++ if [ "$Uu" = "" ] ; then ++ Uu="$USER" + fi ++ ++ U=`echo $Uu | sed -e "s/&/\\\\\&/g"` + + # Under Linux, "fix" the default interface if eth1 is not available + if test `uname -s` = "Linux" ; then +@@ -221,7 +223,7 @@ + $ECHO "** Summary of what you entered **" + $ECHO "" + $ECHO "Ethernet Interface: $E" +- $ECHO "User name: $U" ++ $ECHO "User name: $Uu" + if [ "$D" = "no" ] ; then + $ECHO "Activate-on-demand: No" + else +@@ -288,7 +290,12 @@ + fi + + # Some #$(*& ISP's use a slash in the user name... +-sed -e "s&^USER=.*&USER='$U'&" \ ++for SEP in ':' ';' '/' '!' '|' '_' '-' '@' ; do ++ if [ "$U" = `echo $U | sed "sI${SEP}II"` ]; then ++ break; ++ fi ++done ++sed -e "s${SEP}^USER=.*${SEP}USER='$U'${SEP}"\ + -e "s&^ETH=.*Ð='$E'&" \ + -e "s&^PIDFILE=.*&PIDFILE=\"$VARRUN/\$CF_BASE-pppoe.pid\"&" \ + -e "s/^FIREWALL=.*/FIREWALL=$FIREWALL/" \ +@@ -337,10 +344,10 @@ + cp /dev/null /etc/ppp/chap-secrets-bak + fi + +-egrep -v "^$U|^\"$U\"" /etc/ppp/pap-secrets-bak > /etc/ppp/pap-secrets +-$ECHO "\"$U\" * \"$PWD1\"" >> /etc/ppp/pap-secrets +-egrep -v "^$U|^\"$U\"" /etc/ppp/chap-secrets-bak > /etc/ppp/chap-secrets +-$ECHO "\"$U\" * \"$PWD1\"" >> /etc/ppp/chap-secrets ++egrep -v "^$Uu|^\"$Uu\"" /etc/ppp/pap-secrets-bak > /etc/ppp/pap-secrets ++$ECHO "\"$Uu\" * \"$PWD1\"" >> /etc/ppp/pap-secrets ++egrep -v "^$Uu|^\"$Uu\"" /etc/ppp/chap-secrets-bak > /etc/ppp/chap-secrets ++$ECHO "\"$Uu\" * \"$PWD1\"" >> /etc/ppp/chap-secrets + + $ECHO "" + $ECHO "" diff --git a/net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild b/net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild new file mode 100644 index 000000000000..a2c0dc9bd077 --- /dev/null +++ b/net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild,v 1.1 2006/04/21 07:17:16 mrness Exp $ + +inherit eutils flag-o-matic + +DESCRIPTION="A user-mode PPPoE client and server suite for Linux" +HOMEPAGE="http://www.roaringpenguin.com/pppoe/" +SRC_URI="http://www.roaringpenguin.com/penguin/pppoe/${P}.tar.gz + ftp://ftp.samba.org/pub/ppp/ppp-2.4.3.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sh ~sparc ~x86" +IUSE="X" + +DEPEND="net-dialup/ppp + X? ( dev-lang/tk )" + +pkg_setup() { + einfo "Gentoo is moving toward common configuration file for all network interfaces." + einfo "Please use baselayout adsl module for configuring your network using rp-pppoe" + einfo "or, better yet, use generic PPP support available in baselayout-1.12." + + if [[ -x "${ROOT}/etc/init.d/rp-pppoe" ]]; then + echo + eerror "The old /etc/init.d/rp-pppoe script is incompatible with ${CATEGORY}/${P} and" + eerror "it should be removed before you could upgrade this package." + die "Unsupported old init script detected" + fi +} + +src_unpack() { + unpack ${A} || die "failed to unpack" + + # Patch to enable integration of adsl-start and adsl-stop with + # baselayout-1.11.x so that the pidfile can be found reliably per interface + epatch "${FILESDIR}/${P}-gentoo-netscripts.patch" + + epatch "${FILESDIR}/${P}-username-charset.patch" #82410 + epatch "${FILESDIR}/${P}-plugin-options.patch" + + #Avoid "setXid, dynamically linked and using lazy bindings" QA notice + sed -i -e 's:\(@CC@\) \(-o pppoe-wrapper wrapper.o\):\1 '$(bindnow-flags)' \2:' "${S}/gui/Makefile.in" + + # sanbdox violation workaround + sed -i -e 's/modprobe/echo modprobe/' "${S}/src/configure" || die "sed failed" +} + +src_compile() { + addpredict /dev/ppp + + cd "${S}/src" + econf --enable-plugin=../../ppp-2.4.3 || die "econf failed" + emake || die "emake failed" + + if use X; then + make -C "${S}/gui" || die "gui make failed" + fi +} + +src_install () { + cd "${S}/src" + make RPM_INSTALL_ROOT="${D}" docdir=/usr/share/doc/${PF} install \ + || die "install failed" + + #Don't use compiled rp-pppoe plugin; use it from the current version of pppd + rm "${D}/etc/ppp/plugins/rp-pppoe.so" + local PPPD_VER=`best_version net-dialup/ppp` + PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR} + PPPD_VER=${PPPD_VER%%-*} #reduce it to ${PV} + if [ -n "${PPPD_VER}" ] && [ -f "${ROOT}/usr/lib/pppd/${PPPD_VER}/rp-pppoe.so" ] ; then + dosym /usr/lib/pppd/${PPPD_VER}/rp-pppoe.so /etc/ppp/plugins/rp-pppoe.so + fi + + prepalldocs + + if use X; then + make -C "${S}/gui" install RPM_INSTALL_ROOT="${D}" \ + datadir=/usr/share/doc/${PF}/ || die "gui install failed" + dosym /usr/share/doc/${PF}/tkpppoe /usr/share/tkpppoe + fi +} + +pkg_postinst() { + einfo "Use pppoe-setup to configure your dialup connection" + echo + ewarn "Please note that adsl-* scripts have been renamed to pppoe-*." +} |