Add experimental support for EAP-TLS, selectable through eap-tls useflag (#109935)
authorAlin Năstac <mrness@gentoo.org>
Sat, 5 Nov 2005 12:09:22 +0000 (12:09 +0000)
committerAlin Năstac <mrness@gentoo.org>
Sat, 5 Nov 2005 12:09:22 +0000 (12:09 +0000)
Package-Manager: portage-2.0.51.22-r3

net-dialup/ppp/ChangeLog
net-dialup/ppp/Manifest
net-dialup/ppp/files/digest-ppp-2.4.3-r9 [new file with mode: 0644]
net-dialup/ppp/ppp-2.4.3-r9.ebuild [new file with mode: 0644]

index 249897d081b68a17ba0d6935d299565efa4bd65f..51d218ae92bd0b19e820970419b66150caf85b98 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-dialup/ppp
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/ppp/ChangeLog,v 1.129 2005/10/18 02:28:53 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/ppp/ChangeLog,v 1.130 2005/11/05 12:09:22 mrness Exp $
+
+*ppp-2.4.3-r9 (05 Nov 2005)
+
+  05 Nov 2005; Alin Nastac <mrness@gentoo.org> +ppp-2.4.3-r9.ebuild:
+  Add experimental support for EAP-TLS, selectable through eap-tls useflag
+  (#109935).
 
   18 Oct 2005; Aron Griffis <agriffis@gentoo.org> ppp-2.4.2-r15.ebuild:
   Mark 2.4.2-r15 stable on alpha
index 65c32c101cafdefb57977415c0222e333bfd2a61..617d75d23e91c6d776b05ce421365a11aac97eac 100644 (file)
@@ -1,34 +1,36 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-MD5 6fffe64359ab5c9571f277b7d138e8c2 ppp-2.4.2-r15.ebuild 7412
-MD5 e6fdfdc4317d7fe324c50bd0477ca3f8 metadata.xml 295
 MD5 06756b9843bf54824792153605bcac28 ppp-2.4.2-r12.ebuild 6935
+MD5 beb9521050c6c8e9e21ec6f9143a3601 ppp-2.4.3-r9.ebuild 8323
 MD5 2b7d702806660278ad8fc0f38b3cb842 ppp-2.4.3-r8.ebuild 8082
-MD5 7378e4df8e503bf05901653bc5b70399 ChangeLog 22941
+MD5 8e4a4987508d31a96b5ac3f444461192 ChangeLog 23126
+MD5 6fffe64359ab5c9571f277b7d138e8c2 ppp-2.4.2-r15.ebuild 7412
+MD5 e6fdfdc4317d7fe324c50bd0477ca3f8 metadata.xml 295
 MD5 fc56767c28bef6332decb0a5c48cad83 ppp-2.4.2-r10.ebuild 6209
-MD5 23a7e77ad13ddd12f281fe134508e52f files/digest-ppp-2.4.2-r15 271
-MD5 d90deeaef8dbdfcd18d1567681d03559 files/digest-ppp-2.4.2-r10 271
-MD5 fa2a5b8df496922fa2fb592115953b6b files/options-pppoe 53
+MD5 4e62cdeb360ca0a22becbd2deb6f2dac files/pon 957
+MD5 86cdaf133f7a79fb464f02d83afc7734 files/plog 146
+MD5 05b7394b35a2342033b52134568bf6b8 files/poff 2723
+MD5 2890b47660f967a07ac5b211850e46c5 files/options-pptp 238
 MD5 140bc2a08334d3546f43259934da603e files/chat-default 347
-MD5 f0ad3e0c62aec1771536caf00e28b9c6 files/pppoe.html 7605
+MD5 341c2661a11f00fdd1043a4d4e82977e files/ip-up 1083
 MD5 44cc662ba9aa61dd9add3ddd4c5ded57 files/pon.1 3607
 MD5 c9117abf5fed623d5290779446e9855e files/confd.ppp0 2775
-MD5 341c2661a11f00fdd1043a4d4e82977e files/ip-up 1083
+MD5 d90deeaef8dbdfcd18d1567681d03559 files/digest-ppp-2.4.2-r10 271
+MD5 d90deeaef8dbdfcd18d1567681d03559 files/digest-ppp-2.4.2-r12 271
+MD5 23a7e77ad13ddd12f281fe134508e52f files/digest-ppp-2.4.2-r15 271
+MD5 fa2a5b8df496922fa2fb592115953b6b files/options-pppoe 53
 MD5 2f3f8eb46b9d97a435a8694683f84651 files/net.ppp0 4408
-MD5 5a554e2a04b9e11bb5bea839213bf97c files/ip-down 931
-MD5 86cdaf133f7a79fb464f02d83afc7734 files/plog 146
-MD5 05b7394b35a2342033b52134568bf6b8 files/poff 2723
 MD5 b7ba474b501edf4a1179142b306bdcd0 files/digest-ppp-2.4.3-r8 195
-MD5 d90deeaef8dbdfcd18d1567681d03559 files/digest-ppp-2.4.2-r12 271
-MD5 2890b47660f967a07ac5b211850e46c5 files/options-pptp 238
+MD5 cc3f6844a351a424392e0d5ad6deec0d files/digest-ppp-2.4.3-r9 195
 MD5 1fd88dda7f4996799c69a9501d42cc23 files/README.mpls 530
 MD5 5d83af7b897082a0b1ecd70a2cc2a0c7 files/modules.ppp 268
-MD5 4e62cdeb360ca0a22becbd2deb6f2dac files/pon 957
+MD5 5a554e2a04b9e11bb5bea839213bf97c files/ip-down 931
+MD5 f0ad3e0c62aec1771536caf00e28b9c6 files/pppoe.html 7605
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.1 (GNU/Linux)
 
-iD8DBQFDVF3yJrHF4yAQTrARAuwVAJ9kJDWzpNyiE0jhbANASJ+swvvxCgCdFTmX
-WDkLmni8UTouqfG14vUAGBM=
-=a2pm
+iD8DBQFDbKEXNSP4Vda7IdsRAlG1AKCH+uUeygvqjRYn8EDemgilYI+qOACgirO4
+GKw9BCmr8qkcYJ1+ErkPahc=
+=gwCg
 -----END PGP SIGNATURE-----
diff --git a/net-dialup/ppp/files/digest-ppp-2.4.3-r9 b/net-dialup/ppp/files/digest-ppp-2.4.3-r9
new file mode 100644 (file)
index 0000000..2fdf48d
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 848f6c3cafeb6074ffeb293c3af79b7c ppp-2.4.3.tar.gz 688092
+MD5 409bf412f967694e64363af4f020a07b ppp-2.4.3-patches-20051105.tar.gz 54784
+MD5 9d2f3febf510c5b0cbb4dacba713a217 ppp-dhcpc.tgz 33497
diff --git a/net-dialup/ppp/ppp-2.4.3-r9.ebuild b/net-dialup/ppp/ppp-2.4.3-r9.ebuild
new file mode 100644 (file)
index 0000000..6b56e67
--- /dev/null
@@ -0,0 +1,276 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/ppp/ppp-2.4.3-r9.ebuild,v 1.1 2005/11/05 12:09:22 mrness Exp $
+
+inherit eutils flag-o-matic toolchain-funcs linux-info
+
+DESCRIPTION="Point-to-Point Protocol (PPP)"
+HOMEPAGE="http://www.samba.org/ppp"
+SRC_URI="ftp://ftp.samba.org/pub/ppp/${P}.tar.gz
+       mirror://gentoo/${P}-patches-20051105.tar.gz
+       dhcp? ( http://www.netservers.co.uk/gpl/ppp-dhcpc.tgz )"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="activefilter atm dhcp eap-tls gtk ipv6 mppe-mppc pam radius"
+
+RDEPEND="virtual/libc
+       activefilter? ( >=virtual/libpcap-0.9.3 )
+       atm? ( net-dialup/linux-atm )
+       pam? ( sys-libs/pam )
+       gtk? ( =x11-libs/gtk+-1* )
+       eap-tls? ( net-misc/curl >=dev-libs/openssl-0.9.7 )"
+DEPEND="${RDEPEND}
+       >=sys-apps/sed-4"
+
+pkg_setup() {
+       if ! use radius; then
+               echo
+               ewarn "RADIUS plugins installation is now controled by radius useflag!"
+               ewarn "If you need them, hit Ctrl-C now!"
+               ebeep
+       fi
+}
+
+src_unpack() {
+       unpack ${A}
+       cd ${S}
+
+       epatch ${WORKDIR}/patch/ppp_flags.patch
+       epatch ${WORKDIR}/patch/mpls.patch
+       epatch ${WORKDIR}/patch/killaddr-smarter.patch
+       epatch ${WORKDIR}/patch/upstream-fixes.patch
+       epatch ${WORKDIR}/patch/rp-pppoe-any-interface.patch
+
+       use eap-tls && {
+               # see http://eaptls.spe.net/index.html for more info
+               einfo "Enabling EAP-TLS support"
+               epatch ${WORKDIR}/patch/eaptls-0.7-gentoo.patch
+       }
+
+       use mppe-mppc && {
+               einfo "Enabling MPPE-MPPC support"
+               epatch ${WORKDIR}/patch/mppe-mppc-1.1.patch
+               use eap-tls && epatch ${WORKDIR}/patch/eaptls-mppe-0.7-gentoo.patch
+       }
+
+       use atm && {
+               einfo "Enabling PPPoATM support"
+               sed -i "s/^#HAVE_LIBATM=yes/HAVE_LIBATM=yes/" ${S}/pppd/plugins/pppoatm/Makefile.linux
+       }
+
+       use activefilter || {
+               einfo "Disabling active filter"
+               sed -i "s/^FILTER=y/#FILTER=y/" pppd/Makefile.linux
+       }
+
+       use pam && {
+               einfo "Enabling PAM"
+               sed -i "s/^#USE_PAM=y/USE_PAM=y/" pppd/Makefile.linux
+       }
+
+       use ipv6 && {
+               einfo "Enabling IPv6"
+               sed -i "s/#HAVE_INET6/HAVE_INET6/" pppd/Makefile.linux
+       }
+
+       einfo "Enabling CBCP"
+       sed -i "s/^#CBCP=y/CBCP=y/" ${S}/pppd/Makefile.linux
+
+       use dhcp && {
+               # copy the ppp-dhcp plugin files
+               einfo "Copying ppp-dhcp plugin files..."
+               tar -xzf ${DISTDIR}/ppp-dhcpc.tgz -C ${S}/pppd/plugins/
+               sed -i -e 's/SUBDIRS := rp-pppoe/SUBDIRS := rp-pppoe dhcp/' ${S}/pppd/plugins/Makefile.linux
+               sed -i -e "s/-O2/${CFLAGS} -fPIC/" ${S}/pppd/plugins/dhcp/Makefile.linux
+               epatch ${WORKDIR}/patch/dhcp-sys_error_to_strerror.patch
+       }
+
+       # Set correct libdir
+       sed -i -e "s:/lib/pppd:/$(get_libdir)/pppd:" \
+               ${S}/pppd/{pathnames.h,pppd.8} || die
+
+       find ${S} -type f -name Makefile.linux \
+               -exec sed -i -e '/^CC[[:space:]]*=/d' {} \;
+
+       use radius && {
+               #set the right paths in radiusclient.conf
+               sed -i -e "s:/usr/local/etc:/etc:" \
+                       -e "s:/usr/local/sbin:/usr/sbin:" ${S}/pppd/plugins/radius/etc/radiusclient.conf
+               #set config dir to /etc/ppp/radius
+               sed -i -e "s:/etc/radiusclient:/etc/ppp/radius:g" \
+                       ${S}/pppd/plugins/radius/{*.8,*.c,*.h} \
+                       ${S}/pppd/plugins/radius/etc/*
+       }
+}
+
+src_compile() {
+       export CC="$(tc-getCC)"
+       export AR="$(tc-getAR)"
+       append-ldflags -Wl,-z,now
+       econf || die "configuration failed"
+       emake COPTS="${CFLAGS}" || die "compile failed"
+
+       #build pppgetpass
+       cd contrib/pppgetpass
+       if use gtk; then
+               emake -f Makefile.linux || die "failed to build pppgetpass"
+       else
+               emake pppgetpass.vt || die "failed to build pppgetpass"
+       fi
+}
+
+pkg_preinst() {
+       if use radius && [ -d ${ROOT}/etc/radiusclient ] && has_version "<${CATEGORY}/${PN}-2.4.3-r5"; then
+               ebegin "Copy /etc/radiusclient to /etc/ppp/radius"
+               cp -pPR ${ROOT}/etc/radiusclient ${ROOT}/etc/ppp/radius
+               eend $?
+       fi
+}
+
+src_install() {
+       local y
+       for y in chat pppd pppdump pppstats
+       do
+               doman ${y}/${y}.8
+               dosbin ${y}/${y}
+       done
+       chmod u+s-w ${D}/usr/sbin/pppd
+
+       dosbin pppd/plugins/rp-pppoe/pppoe-discovery
+
+       dodir /etc/ppp/peers
+       insinto /etc/ppp
+       insopts -m0600
+       newins etc.ppp/pap-secrets pap-secrets.example
+       newins etc.ppp/chap-secrets chap-secrets.example
+
+       insopts -m0644
+       doins etc.ppp/options
+       doins ${FILESDIR}/options-pptp
+       doins ${FILESDIR}/options-pppoe
+       doins ${FILESDIR}/chat-default
+
+       insopts -m0755
+       doins ${FILESDIR}/ip-up
+       doins ${FILESDIR}/ip-down
+
+       exeinto /etc/init.d/
+       doexe ${FILESDIR}/net.ppp0
+
+       if use pam; then
+               insinto /etc/pam.d
+               insopts -m0644
+               newins pppd/ppp.pam ppp || die "not found ppp.pam"
+       fi
+
+       insinto /etc/conf.d
+       insopts -m0600
+       newins ${FILESDIR}/confd.ppp0 net.ppp0
+
+       local PLUGINS_DIR=/usr/$(get_libdir)/pppd/$(awk -F '"' '/VERSION/ {print $2}' pppd/patchlevel.h)
+       #closing " for syntax coloring
+       dodir ${PLUGINS_DIR}
+       insinto ${PLUGINS_DIR}
+       insopts -m0755
+       doins pppd/plugins/minconn.so || die "minconn.so not build"
+       doins pppd/plugins/passprompt.so || die "passprompt.so not build"
+       doins pppd/plugins/passwordfd.so || die "passwordfd.so not build"
+       doins pppd/plugins/winbind.so || die "winbind.so not build"
+       doins pppd/plugins/rp-pppoe/rp-pppoe.so || die "rp-pppoe.so not build"
+       if use atm; then
+               doins pppd/plugins/pppoatm/pppoatm.so || die "pppoatm.so not build"
+       fi
+       if use dhcp; then
+               doins pppd/plugins/dhcp/dhcpc.so || die "dhcpc.so not build"
+       fi
+       if use radius; then
+               doins pppd/plugins/radius/radius.so || die "radius.so not build"
+               doins pppd/plugins/radius/radattr.so || die "radattr.so not build"
+               doins pppd/plugins/radius/radrealms.so || die "radrealms.so not build"
+
+               #Copy radiusclient configuration files (#92878)
+               insinto /etc/ppp/radius
+               insopts -m0644
+               doins pppd/plugins/radius/etc/{dictionary*,issue,port-id-map,radiusclient.conf,realms,servers}
+
+               doman pppd/plugins/radius/pppd-radius.8
+               doman pppd/plugins/radius/pppd-radattr.8
+       fi
+
+       insinto /etc/modules.d
+       insopts -m0644
+       newins ${FILESDIR}/modules.ppp ppp
+       if use mppe-mppc; then
+               echo 'alias ppp-compress-18 ppp_mppe_mppc' >> ${D}/etc/modules.d/ppp
+       fi
+
+       dodoc PLUGINS README* SETUP Changes-2.3 FAQ
+       dodoc ${FILESDIR}/README.mpls
+       dohtml ${FILESDIR}/pppoe.html
+
+       dosbin scripts/pon
+       dosbin scripts/poff
+       dosbin scripts/plog
+       doman scripts/pon.1
+
+       # Adding misc. specialized scripts to doc dir
+       dodir /usr/share/doc/${PF}/scripts/chatchat
+       insinto /usr/share/doc/${PF}/scripts/chatchat
+       doins scripts/chatchat/*
+       insinto /usr/share/doc/${PF}/scripts
+       doins scripts/*
+
+       if use gtk; then
+               dosbin contrib/pppgetpass/{pppgetpass.vt,pppgetpass.gtk}
+               newsbin contrib/pppgetpass/pppgetpass.sh pppgetpass
+       else
+               newsbin contrib/pppgetpass/pppgetpass.vt pppgetpass
+       fi
+       doman contrib/pppgetpass/pppgetpass.8
+}
+
+pkg_postinst() {
+       if get_version ; then
+               echo
+               ewarn "If any of the following kernel configuration options is missing,"
+               ewarn "you should reconfigure and rebuild your kernel before running pppd."
+               CONFIG_CHECK="~PPP"
+               use activefilter && CONFIG_CHECK="${CONFIG_CHECK} ~PPP_FILTER"
+               CONFIG_CHECK="${CONFIG_CHECK} ~PPP_BSDCOMP ~PPP_DEFLATE"
+               check_extra_config
+               echo
+       fi
+
+       if [ ! -e ${ROOT}/dev/.devfsd ] && [ ! -e ${ROOT}/dev/.udev ] && [ ! -e ${ROOT}/dev/ppp ]; then
+               mknod ${ROOT}/dev/ppp c 108 0
+       fi
+       if [ "$ROOT" = "/" ]; then
+               /sbin/update-modules
+       fi
+
+       #create *-secrets files if not exists
+       [ -f "${ROOT}/etc/ppp/pap-secrets" ] || \
+               cp -pP "${ROOT}/etc/ppp/pap-secrets.example" "${ROOT}/etc/ppp/pap-secrets"
+       [ -f "${ROOT}/etc/ppp/chap-secrets" ] || \
+               cp -pP "${ROOT}/etc/ppp/chap-secrets.example" "${ROOT}/etc/ppp/chap-secrets"
+
+       ewarn "To enable kernel-pppoe read html/pppoe.html in the doc-directory."
+       ewarn "Note: the library name has changed from pppoe.so to rp-pppoe.so."
+       ewarn "Pon, poff and plog scripts have been supplied for experienced users."
+       ewarn "New users or those requiring something more should have a look at"
+       ewarn "the /etc/init.d/net.ppp0 script."
+       ewarn "Users needing particular scripts (ssh,rsh,etc.)should check out the"
+       ewarn "/usr/share/doc/ppp*/scripts directory."
+
+       # lib name has changed
+       sed -i -e "s:^pppoe.so:rp-pppoe.so:" ${ROOT}etc/ppp/options
+
+       if use radius && has_version "<${CATEGORY}/${PN}-2.4.3-r5"; then
+               echo
+               ewarn "As of ${PN}-2.4.3-r5, the RADIUS configuration files have moved from"
+               ewarn "   /etc/radiusclient to /etc/ppp/radius."
+               einfo "For your convenience, radiusclient directory was copied to the new location."
+       fi
+}