summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-dialup/ppp')
-rw-r--r--net-dialup/ppp/files/ppp-2.5.0-openssl-pkgconfig.patch79
-rw-r--r--net-dialup/ppp/files/ppp-2.5.0-pam-pkgconfig.patch81
-rw-r--r--net-dialup/ppp/files/ppp-2.5.0-radius-mppe.patch167
-rw-r--r--net-dialup/ppp/ppp-2.5.0-r3.ebuild115
-rw-r--r--net-dialup/ppp/ppp-2.5.0-r4.ebuild120
-rw-r--r--net-dialup/ppp/ppp-2.5.0-r7.ebuild (renamed from net-dialup/ppp/ppp-2.5.0-r6.ebuild)12
6 files changed, 335 insertions, 239 deletions
diff --git a/net-dialup/ppp/files/ppp-2.5.0-openssl-pkgconfig.patch b/net-dialup/ppp/files/ppp-2.5.0-openssl-pkgconfig.patch
new file mode 100644
index 000000000000..893b623a4ea5
--- /dev/null
+++ b/net-dialup/ppp/files/ppp-2.5.0-openssl-pkgconfig.patch
@@ -0,0 +1,79 @@
+https://bugs.gentoo.org/905442
+https://github.com/ppp-project/ppp/pull/438
+
+From 9b4bdca70081abbad26277b009ef9c4ab7e276d0 Mon Sep 17 00:00:00 2001
+From: Brahmajit Das <brahmajit.xyz@gmail.com>
+Date: Thu, 2 Nov 2023 11:26:18 +0530
+Subject: [PATCH] Fix linking error with lld linkers (#438)
+
+When using lld linker, build fails with
+
+ld.lld: error: /usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../lib64/Scrt1.o is incompatible with elf32-i386
+ld.lld: error: /usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../lib64/crti.o is incompatible with elf32-i386
+ld.lld: error: /usr/lib/llvm/16/bin/../../../../lib/clang/16/lib/linux
+
+The fix is to check pkg-config first, and not force manual -L /usr/lib.
+If pkg-config succeeded, then we don't bother with -L /usr/lib
+
+Our guess is this what the actual intention was based upon the coments
+
+if pkg-config is installed and openssl has installed a .pc file,
+then use that information and don't search ssldirs
+
+First found on gentoo linux with llvm profile, please check out Bug:
+section of the commit for more info and a complete build log.
+
+Bug: https://bugs.gentoo.org/905442
+
+Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
+Co-authored-by: Sam James <sam@gentoo.org>
+---
+ m4/ax_check_openssl.m4 | 28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/m4/ax_check_openssl.m4 b/m4/ax_check_openssl.m4
+index 8ae39cae6..39154c856 100644
+--- a/m4/ax_check_openssl.m4
++++ b/m4/ax_check_openssl.m4
+@@ -55,6 +55,20 @@ AC_DEFUN([AX_CHECK_OPENSSL], [
+ ])
+
+ AS_IF([test "${with_openssl}" != "no"], [
++ # if pkg-config is installed and openssl has installed a .pc file,
++ # then use that information and don't search ssldirs
++ AC_PATH_PROG([PKG_CONFIG], [pkg-config])
++ if test x"$PKG_CONFIG" != x""; then
++ OPENSSL_LDFLAGS=`$PKG_CONFIG openssl --libs-only-L 2>/dev/null`
++ if test $? = 0; then
++ OPENSSL_LIBS=`$PKG_CONFIG openssl --libs-only-l 2>/dev/null`
++ OPENSSL_INCLUDES=`$PKG_CONFIG openssl --cflags-only-I 2>/dev/null`
++ found=true
++ fi
++ fi
++ ])
++
++ AS_IF([test "${with_openssl}" != "no" && test ! ${found}], [
+ OPENSSL_INCLUDES=
+ for ssldir in $ssldirs; do
+ AC_MSG_CHECKING([for openssl/ssl.h in $ssldir])
+@@ -69,20 +83,6 @@ AC_DEFUN([AX_CHECK_OPENSSL], [
+ AC_MSG_RESULT([no])
+ ])
+ done])
+-
+- AS_IF([test "${with_openssl}" != "no" && test ! ${found}], [
+- # if pkg-config is installed and openssl has installed a .pc file,
+- # then use that information and don't search ssldirs
+- AC_PATH_PROG([PKG_CONFIG], [pkg-config])
+- if test x"$PKG_CONFIG" != x""; then
+- OPENSSL_LDFLAGS=`$PKG_CONFIG openssl --libs-only-L 2>/dev/null`
+- if test $? = 0; then
+- OPENSSL_LIBS=`$PKG_CONFIG openssl --libs-only-l 2>/dev/null`
+- OPENSSL_INCLUDES=`$PKG_CONFIG openssl --cflags-only-I 2>/dev/null`
+- found=true
+- fi
+- fi
+- ])
+
+ AS_IF([test "${with_openssl}" != "no" && test ${found}], [
+
diff --git a/net-dialup/ppp/files/ppp-2.5.0-pam-pkgconfig.patch b/net-dialup/ppp/files/ppp-2.5.0-pam-pkgconfig.patch
new file mode 100644
index 000000000000..40488fee96b7
--- /dev/null
+++ b/net-dialup/ppp/files/ppp-2.5.0-pam-pkgconfig.patch
@@ -0,0 +1,81 @@
+https://github.com/ppp-project/ppp/pull/479
+
+From c73498fad415d99aa566b11256938272e62b22dd Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Tue, 5 Mar 2024 14:41:10 -0500
+Subject: [PATCH] Use pkg-config to detect PAM when possible
+
+Signed-off-by: Mike Gilbert <floppym@gentoo.org>
+---
+ m4/ax_check_pam.m4 | 50 ++++++++++++++++++++--------------------------
+ 1 file changed, 22 insertions(+), 28 deletions(-)
+
+diff --git a/m4/ax_check_pam.m4 b/m4/ax_check_pam.m4
+index b17a7573c..7ebd79b61 100644
+--- a/m4/ax_check_pam.m4
++++ b/m4/ax_check_pam.m4
+@@ -26,34 +26,28 @@
+ AC_DEFUN([AX_CHECK_PAM], [
+ AC_ARG_WITH([pam],
+ [AS_HELP_STRING([--with-pam=DIR],
+- [With libpam support, see ftp.redhat.com:/pub/pam])],
+- [
+- case "$withval" in
+- "" | y | ye | yes)
+- pamdirs="/usr/local /usr/lib /usr"
+- ;;
+- n | no)
+- with_pam="no"
+- ;;
+- *)
+- pamdirs="$withval"
+- ;;
+- esac
+- ])
++ [With libpam support, see ftp.redhat.com:/pub/pam])])
+
+- if [ test "x${with_pam}" != "xno" ] ; then
+- PAM_LIBS="-lpam"
+- for pamdir in $pamdirs; do
+- AC_MSG_CHECKING([for pam_appl.h in $pamdir])
+- if test -f "$pamdir/include/security/pam_appl.h"; then
+- PAM_CFLAGS="-I$pamdir/include"
+- PAM_LDFLAGS="-L$pamdir/lib"
+- AC_MSG_RESULT([yes])
+- break
+- else
+- AC_MSG_RESULT([no])
+- fi
+- done
++ AS_IF([test "$with_pam" != "no"], [
++ AS_CASE(["$with_pam"],
++ [""|yes], [PKG_CHECK_MODULES([PAM], [pam], [pamdirs=],
++ [pamdirs="/usr/local /usr/lib /usr"])],
++ [pamdirs="$with_pam"])
++
++ AS_IF([test -n "$pamdirs"], [
++ PAM_LIBS="-lpam"
++ for pamdir in $pamdirs; do
++ AC_MSG_CHECKING([for pam_appl.h in $pamdir])
++ if test -f "$pamdir/include/security/pam_appl.h"; then
++ PAM_CFLAGS="-I$pamdir/include"
++ PAM_LDFLAGS="-L$pamdir/lib"
++ AC_MSG_RESULT([yes])
++ break
++ else
++ AC_MSG_RESULT([no])
++ fi
++ done
++ ])
+
+ # try the preprocessor and linker with our new flags,
+ # being careful not to pollute the global LIBS, LDFLAGS, and CPPFLAGS
+@@ -87,7 +81,7 @@ AC_DEFUN([AX_CHECK_PAM], [
+ AC_SUBST([PAM_CFLAGS])
+ AC_SUBST([PAM_LIBS])
+ AC_SUBST([PAM_LDFLAGS])
+- fi
++ ])
+ AM_CONDITIONAL(WITH_LIBPAM, test "x${with_pam}" != "xno")
+ ])
+
diff --git a/net-dialup/ppp/files/ppp-2.5.0-radius-mppe.patch b/net-dialup/ppp/files/ppp-2.5.0-radius-mppe.patch
new file mode 100644
index 000000000000..7bb63c964605
--- /dev/null
+++ b/net-dialup/ppp/files/ppp-2.5.0-radius-mppe.patch
@@ -0,0 +1,167 @@
+https://github.com/ppp-project/ppp/pull/463
+https://bugs.gentoo.org/915686
+
+From 77693b89fed6d4110184789f8e7dfd31710f3190 Mon Sep 17 00:00:00 2001
+From: Jaco Kroon <jaco@uls.co.za>
+Date: Thu, 23 Nov 2023 14:54:42 +0200
+Subject: [PATCH] radius: fix the MPPE key decryption for the second-half of
+ the key block.
+
+During he refactor in commit 4cb90c1 the key material used to decrypt
+the second-half of the encrypted block was accidentally updated from:
+
+MD5(radius_secret + crypt[0..15]); to:
+
+MD5(radius_secret + crypt[0..15] + salt)
+
+Which would obviously mismatch.
+
+This also refactors back into what I believe to be a more readable block
+with lower nesting and more comprehensive error reporting.
+
+Closes: #453
+Signed-off-by: Jaco Kroon <jaco@uls.co.za>
+---
+ pppd/plugins/radius/radius.c | 115 +++++++++++++++++------------------
+ 1 file changed, 55 insertions(+), 60 deletions(-)
+
+diff --git a/pppd/plugins/radius/radius.c b/pppd/plugins/radius/radius.c
+index c73ca0b53..e99bc7511 100644
+--- a/pppd/plugins/radius/radius.c
++++ b/pppd/plugins/radius/radius.c
+@@ -897,80 +897,75 @@ radius_setmppekeys2(VALUE_PAIR *vp, REQUEST_INFO *req_info)
+ memcpy(plain, crypt, 32);
+
+ ctx = PPP_MD_CTX_new();
+- if (ctx) {
+-
+- if (PPP_DigestInit(ctx, PPP_md5())) {
+-
+- if (PPP_DigestUpdate(ctx, req_info->secret, strlen(req_info->secret))) {
+-
+- if (PPP_DigestUpdate(ctx, req_info->request_vector, AUTH_VECTOR_LEN)) {
+-
+- if (PPP_DigestUpdate(ctx, salt, 2)) {
+-
+- buflen = sizeof(buf);
+- if (PPP_DigestFinal(ctx, buf, &buflen)) {
+-
+- status = 1;
+- }
+- }
+- }
+- }
+- }
+-
+- PPP_MD_CTX_free(ctx);
++ if (!ctx) {
++ error("RADIUS: Error creating PPP_MD_CTX for MS-MPPE-%s-Key attribute", type);
++ return -1;
+ }
+
+- if (status) {
+-
+- for (i = 0; i < 16; i++) {
+- plain[i] ^= buf[i];
+- }
++ buflen = sizeof(buf);
++ if (!PPP_DigestInit(ctx, PPP_md5())) {
++ error("RADIUS: Error setting hash algorithm to MD5 for MS-MPPE-%s-Key attribute", type);
++ } else if (!PPP_DigestUpdate(ctx, req_info->secret, strlen(req_info->secret))) {
++ error("RADIUS: Error mixing in radius secret for MS-MPPE-%s-Key attribute", type);
++ } else if (!PPP_DigestUpdate(ctx, req_info->request_vector, AUTH_VECTOR_LEN)) {
++ error("RADIUS: Error mixing in request vector for MS-MPPE-%s-Key attribute", type);
++ } else if (!PPP_DigestUpdate(ctx, salt, 2)) {
++ error("RADIUS: Error mixing in salt for MS-MPPE-%s-Key attribute", type);
++ } else if (!PPP_DigestFinal(ctx, buf, &buflen)) {
++ error("RADIUS: Error finalizing key buffer for MS-MPPE-%s-Key attribute", type);
++ } else {
++ status = 1;
++ }
+
+- if (plain[0] != 16) {
+- error("RADIUS: Incorrect key length (%d) for MS-MPPE-%s-Key attribute",
+- (int) plain[0], type);
+- return -1;
+- }
++ PPP_MD_CTX_free(ctx);
+
+- status = 0;
+- ctx = PPP_MD_CTX_new();
+- if (ctx) {
+-
+- if (PPP_DigestInit(ctx, PPP_md5())) {
++ if (!status)
++ return -1;
+
+- if (PPP_DigestUpdate(ctx, req_info->secret, strlen(req_info->secret))) {
++ for (i = 0; i < 16; i++) {
++ plain[i] ^= buf[i];
++ }
+
+- if (PPP_DigestUpdate(ctx, crypt, 16)) {
++ if (plain[0] != 16) {
++ error("RADIUS: Incorrect key length (%d) for MS-MPPE-%s-Key attribute",
++ (int) plain[0], type);
++ return -1;
++ }
+
+- if (PPP_DigestUpdate(ctx, salt, 2)) {
++ status = 0;
++ ctx = PPP_MD_CTX_new();
++ if (!ctx) {
++ error("RADIUS: Error creating PPP_MD_CTX for MS-MPPE-%s-Key(2) attribute", type);
++ return -1;
++ }
+
+- buflen = sizeof(buf);
+- if (PPP_DigestFinal(ctx, buf, &buflen)) {
++ buflen = sizeof(buf);
+
+- status = 1;
+- }
+- }
+- }
+- }
+- }
++ if (!PPP_DigestInit(ctx, PPP_md5())) {
++ error("RADIUS: Error setting hash algorithm to MD5 for MS-MPPE-%s-Key(2) attribute", type);
++ } else if (!PPP_DigestUpdate(ctx, req_info->secret, strlen(req_info->secret))) {
++ error("RADIUS: Error mixing in radius secret for MS-MPPE-%s-Key(2) attribute", type);
++ } else if (!PPP_DigestUpdate(ctx, crypt, 16)) {
++ error("RADIUS: Error mixing in crypt vector for MS-MPPE-%s-Key(2) attribute", type);
++ } else if (!PPP_DigestFinal(ctx, buf, &buflen)) {
++ error("RADIUS: Error finalizing key buffer for MS-MPPE-%s-Key(2) attribute", type);
++ } else {
++ status = 1;
++ }
+
+- PPP_MD_CTX_free(ctx);
+- }
++ PPP_MD_CTX_free(ctx);
+
+- if (status) {
++ if (!status)
++ return -1;
+
+- plain[16] ^= buf[0]; /* only need the first byte */
++ plain[16] ^= buf[0]; /* only need the first byte */
+
+- if (vp->attribute == PW_MS_MPPE_SEND_KEY) {
+- mppe_set_keys(plain + 1, NULL, 16);
+- } else {
+- mppe_set_keys(NULL, plain + 1, 16);
+- }
+- return 0;
+- }
++ if (vp->attribute == PW_MS_MPPE_SEND_KEY) {
++ mppe_set_keys(plain + 1, NULL, 16);
++ } else {
++ mppe_set_keys(NULL, plain + 1, 16);
+ }
+-
+- return -1;
++ return 0;
+ }
+ #endif /* PPP_WITH_MPPE */
+
diff --git a/net-dialup/ppp/ppp-2.5.0-r3.ebuild b/net-dialup/ppp/ppp-2.5.0-r3.ebuild
deleted file mode 100644
index f1649c66765c..000000000000
--- a/net-dialup/ppp/ppp-2.5.0-r3.ebuild
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit linux-info pam tmpfiles
-
-PATCH_TARBALL_NAME="${PN}-2.4.9-patches-03"
-DESCRIPTION="Point-to-Point Protocol (PPP)"
-HOMEPAGE="https://ppp.samba.org/"
-SRC_URI="https://download.samba.org/pub/ppp/${P}.tar.gz
- https://raw.githubusercontent.com/ppp-project/ppp/${P}/contrib/pppgetpass/pppgetpass.8"
-
-LICENSE="BSD GPL-2"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="activefilter atm gtk pam systemd"
-
-DEPEND="
- dev-libs/openssl:0=
- virtual/libcrypt:=
- activefilter? ( net-libs/libpcap )
- atm? ( net-dialup/linux-atm )
- gtk? ( x11-libs/gtk+:2 )
- pam? ( sys-libs/pam )
- systemd? ( sys-apps/systemd )
-"
-RDEPEND="${DEPEND}
- !<net-misc/netifrc-0.7.1-r2"
-BDEPEND="virtual/pkgconfig"
-PDEPEND="net-dialup/ppp-scripts"
-
-PATCHES=(
- "${FILESDIR}"/ppp-2.5.0-passwordfd-read-early.patch
- "${FILESDIR}"/ppp-2.5.0-pidfile.patch
-)
-
-pkg_setup() {
- local CONFIG_CHECK="~PPP ~PPP_ASYNC ~PPP_SYNC_TTY"
- local ERROR_PPP="CONFIG_PPP:\t missing PPP support (REQUIRED)"
- local ERROR_PPP_ASYNC="CONFIG_PPP_ASYNC:\t missing asynchronous serial line discipline"
- ERROR_PPP_ASYNC+=" (optional, but highly recommended)"
- local WARNING_PPP_SYNC_TTY="CONFIG_PPP_SYNC_TTY:\t missing synchronous serial line discipline"
- WARNING_PPP_SYNC_TTY+=" (optional; used by 'sync' pppd option)"
- if use activefilter ; then
- CONFIG_CHECK+=" ~PPP_FILTER"
- local ERROR_PPP_FILTER="CONFIG_PPP_FILTER:\t missing PPP filtering support (REQUIRED)"
- fi
- CONFIG_CHECK+=" ~PPP_DEFLATE ~PPP_BSDCOMP ~PPP_MPPE"
- local ERROR_PPP_DEFLATE="CONFIG_PPP_DEFLATE:\t missing Deflate compression (optional, but highly recommended)"
- local ERROR_PPP_BSDCOMP="CONFIG_PPP_BSDCOMP:\t missing BSD-Compress compression (optional, but highly recommended)"
- local WARNING_PPP_MPPE="CONFIG_PPP_MPPE:\t missing MPPE encryption (optional, mostly used by PPTP links)"
- CONFIG_CHECK+=" ~PPPOE ~PACKET"
- local WARNING_PPPOE="CONFIG_PPPOE:\t missing PPPoE support (optional, needed by pppoe plugin)"
- local WARNING_PACKET="CONFIG_PACKET:\t missing AF_PACKET support (optional, used by pppoe plugin)"
- if use atm ; then
- CONFIG_CHECK+=" ~PPPOATM"
- local WARNING_PPPOATM="CONFIG_PPPOATM:\t missing PPPoA support (optional, needed by pppoatm plugin)"
- fi
-
- linux-info_pkg_setup
-}
-
-src_configure() {
- local args=(
- --localstatedir="${EPREFIX}"/var
- --runstatedir="${EPREFIX}"/run
- $(use_enable systemd)
- $(use_with atm)
- $(use_with pam)
- $(use_with activefilter pcap)
- $(use_with gtk)
- --enable-cbcp
- )
- econf "${args[@]}"
-}
-
-src_install() {
- default
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- if use pam; then
- pamd_mimic_system ppp auth account session
- fi
-
- insinto /etc/modprobe.d
- newins "${FILESDIR}/modules.ppp" ppp.conf
-
- dosbin scripts/p{on,off,log}
- doman scripts/pon.1
- dosym pon.1 /usr/share/man/man1/poff.1
- dosym pon.1 /usr/share/man/man1/plog.1
-
- # Adding misc. specialized scripts to doc dir
- dodoc -r scripts
-
- if use gtk ; then
- dosbin contrib/pppgetpass/pppgetpass.{gtk,vt}
- newsbin contrib/pppgetpass/pppgetpass.sh pppgetpass
- else
- newsbin contrib/pppgetpass/pppgetpass.vt pppgetpass
- fi
-
- newtmpfiles "${FILESDIR}/pppd.tmpfiles" pppd.conf
-
- # Missing from upstream tarball
- # https://github.com/ppp-project/ppp/pull/412
- #doman contrib/pppgetpass/pppgetpass.8
- doman "${DISTDIR}/pppgetpass.8"
-}
-
-pkg_postinst() {
- tmpfiles_process pppd.conf
-}
diff --git a/net-dialup/ppp/ppp-2.5.0-r4.ebuild b/net-dialup/ppp/ppp-2.5.0-r4.ebuild
deleted file mode 100644
index c459aa21366d..000000000000
--- a/net-dialup/ppp/ppp-2.5.0-r4.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit linux-info pam tmpfiles
-
-DESCRIPTION="Point-to-Point Protocol (PPP)"
-HOMEPAGE="https://ppp.samba.org/"
-SRC_URI="
- https://download.samba.org/pub/ppp/${P}.tar.gz
- https://raw.githubusercontent.com/ppp-project/ppp/${P}/contrib/pppgetpass/pppgetpass.8
-"
-
-LICENSE="BSD GPL-2"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
-IUSE="activefilter atm gtk pam selinux systemd"
-
-DEPEND="
- dev-libs/openssl:0=
- virtual/libcrypt:=
- activefilter? ( net-libs/libpcap )
- atm? ( net-dialup/linux-atm )
- gtk? ( x11-libs/gtk+:2 )
- pam? ( sys-libs/pam )
- systemd? ( sys-apps/systemd )
-"
-RDEPEND="
- ${DEPEND}
- !<net-misc/netifrc-0.7.1-r2
- selinux? ( sec-policy/selinux-ppp )
-"
-BDEPEND="virtual/pkgconfig"
-PDEPEND="net-dialup/ppp-scripts"
-
-PATCHES=(
- "${FILESDIR}"/ppp-2.5.0-passwordfd-read-early.patch
- "${FILESDIR}"/ppp-2.5.0-pidfile.patch
- "${FILESDIR}"/${P}-radiusclient.conf-parsing.patch
-)
-
-pkg_setup() {
- local CONFIG_CHECK="~PPP ~PPP_ASYNC ~PPP_SYNC_TTY"
- local ERROR_PPP="CONFIG_PPP:\t missing PPP support (REQUIRED)"
- local ERROR_PPP_ASYNC="CONFIG_PPP_ASYNC:\t missing asynchronous serial line discipline"
- ERROR_PPP_ASYNC+=" (optional, but highly recommended)"
- local WARNING_PPP_SYNC_TTY="CONFIG_PPP_SYNC_TTY:\t missing synchronous serial line discipline"
- WARNING_PPP_SYNC_TTY+=" (optional; used by 'sync' pppd option)"
- if use activefilter ; then
- CONFIG_CHECK+=" ~PPP_FILTER"
- local ERROR_PPP_FILTER="CONFIG_PPP_FILTER:\t missing PPP filtering support (REQUIRED)"
- fi
- CONFIG_CHECK+=" ~PPP_DEFLATE ~PPP_BSDCOMP ~PPP_MPPE"
- local ERROR_PPP_DEFLATE="CONFIG_PPP_DEFLATE:\t missing Deflate compression (optional, but highly recommended)"
- local ERROR_PPP_BSDCOMP="CONFIG_PPP_BSDCOMP:\t missing BSD-Compress compression (optional, but highly recommended)"
- local WARNING_PPP_MPPE="CONFIG_PPP_MPPE:\t missing MPPE encryption (optional, mostly used by PPTP links)"
- CONFIG_CHECK+=" ~PPPOE ~PACKET"
- local WARNING_PPPOE="CONFIG_PPPOE:\t missing PPPoE support (optional, needed by pppoe plugin)"
- local WARNING_PACKET="CONFIG_PACKET:\t missing AF_PACKET support (optional, used by pppoe plugin)"
- if use atm ; then
- CONFIG_CHECK+=" ~PPPOATM"
- local WARNING_PPPOATM="CONFIG_PPPOATM:\t missing PPPoA support (optional, needed by pppoatm plugin)"
- fi
-
- linux-info_pkg_setup
-}
-
-src_configure() {
- local args=(
- --localstatedir="${EPREFIX}"/var
- --runstatedir="${EPREFIX}"/run
- $(use_enable systemd)
- $(use_with atm)
- $(use_with pam)
- $(use_with activefilter pcap)
- $(use_with gtk)
- --enable-cbcp
- )
- econf "${args[@]}"
-}
-
-src_install() {
- default
-
- find "${ED}" -name '*.la' -type f -delete || die
-
- if use pam; then
- pamd_mimic_system ppp auth account session
- fi
-
- insinto /etc/modprobe.d
- newins "${FILESDIR}/modules.ppp" ppp.conf
-
- dosbin scripts/p{on,off,log}
- doman scripts/pon.1
- dosym pon.1 /usr/share/man/man1/poff.1
- dosym pon.1 /usr/share/man/man1/plog.1
-
- # Adding misc. specialized scripts to doc dir
- dodoc -r scripts
-
- if use gtk ; then
- dosbin contrib/pppgetpass/pppgetpass.{gtk,vt}
- newsbin contrib/pppgetpass/pppgetpass.sh pppgetpass
- else
- newsbin contrib/pppgetpass/pppgetpass.vt pppgetpass
- fi
-
- newtmpfiles "${FILESDIR}/pppd.tmpfiles" pppd.conf
-
- # Missing from upstream tarball
- # https://github.com/ppp-project/ppp/pull/412
- #doman contrib/pppgetpass/pppgetpass.8
- doman "${DISTDIR}/pppgetpass.8"
-}
-
-pkg_postinst() {
- tmpfiles_process pppd.conf
-}
diff --git a/net-dialup/ppp/ppp-2.5.0-r6.ebuild b/net-dialup/ppp/ppp-2.5.0-r7.ebuild
index 17550d021c06..a68b9f331754 100644
--- a/net-dialup/ppp/ppp-2.5.0-r6.ebuild
+++ b/net-dialup/ppp/ppp-2.5.0-r7.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit linux-info pam tmpfiles
+inherit autotools linux-info pam tmpfiles
DESCRIPTION="Point-to-Point Protocol (PPP)"
HOMEPAGE="https://ppp.samba.org/"
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="BSD GPL-2"
SLOT="0/${PV}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="activefilter atm gtk pam selinux systemd"
DEPEND="
@@ -37,7 +37,10 @@ PDEPEND="net-dialup/ppp-scripts"
PATCHES=(
"${FILESDIR}"/ppp-2.5.0-passwordfd-read-early.patch
"${FILESDIR}"/ppp-2.5.0-pidfile.patch
- "${FILESDIR}"/${P}-radiusclient.conf-parsing.patch
+ "${FILESDIR}"/ppp-2.5.0-radiusclient.conf-parsing.patch
+ "${FILESDIR}"/ppp-2.5.0-openssl-pkgconfig.patch
+ "${FILESDIR}"/ppp-2.5.0-pam-pkgconfig.patch
+ "${FILESDIR}"/ppp-2.5.0-radius-mppe.patch
)
pkg_setup() {
@@ -68,6 +71,7 @@ pkg_setup() {
src_prepare() {
default
+ eautoreconf
# Set the right paths in radiusclient.conf
sed -e "s:/usr/local/etc:/etc:" \