commit: ce7ef2269c36d8f07ae4f578b84dda2454dee5e4 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org> AuthorDate: Thu Jan 9 12:53:45 2020 +0000 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org> CommitDate: Thu Jan 9 13:39:04 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ce7ef226
net-libs/libpcap: USE=remote, EAPI=7, strip pcap-config -L/usr/lib Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org> .../libpcap/files/libpcap-1.9.1-pcap-config.patch | 43 ++++++++++++++++++++++ ...libpcap-9999.ebuild => libpcap-1.9.1-r1.ebuild} | 34 ++++++++++------- net-libs/libpcap/libpcap-9999.ebuild | 12 +++--- net-libs/libpcap/metadata.xml | 1 + 4 files changed, 72 insertions(+), 18 deletions(-) diff --git a/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch b/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch new file mode 100644 index 00000000000..937273c43ff --- /dev/null +++ b/net-libs/libpcap/files/libpcap-1.9.1-pcap-config.patch @@ -0,0 +1,43 @@ +--- a/pcap-config.in ++++ b/pcap-config.in +@@ -59,16 +59,16 @@ + # + if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] + then +- echo "-I$includedir -L$libdir -lpcap $LIBS" ++ echo "-lpcap $LIBS" + elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] + then +- echo "-I$includedir -L$libdir $LIBS" ++ echo "$LIBS" + elif [ "$show_cflags" = 1 ] + then +- echo "-I$includedir" ++ echo "" + elif [ "$show_libs" = 1 ] + then +- echo "-L$libdir -lpcap $LIBS" ++ echo "-lpcap $LIBS" + elif [ "$show_additional_libs" = 1 ] + then + echo "$LIBS" +@@ -80,15 +80,15 @@ + # + if [ "$show_cflags" = 1 -a "$show_libs" = 1 ] + then +- echo "-I$includedir -L$libdir $RPATH -l$PACKAGE_NAME" ++ echo " $RPATH -l$PACKAGE_NAME" + elif [ "$show_cflags" = 1 -a "$show_additional_libs" = 1 ] + then +- echo "-I$includedir" ++ echo "" + elif [ "$show_cflags" = 1 ] + then +- echo "-I$includedir" ++ echo "" + elif [ "$show_libs" = 1 ] + then +- echo "-L$libdir $RPATH -l$PACKAGE_NAME" ++ echo "$RPATH -l$PACKAGE_NAME" + fi + fi diff --git a/net-libs/libpcap/libpcap-9999.ebuild b/net-libs/libpcap/libpcap-1.9.1-r1.ebuild similarity index 57% copy from net-libs/libpcap/libpcap-9999.ebuild copy to net-libs/libpcap/libpcap-1.9.1-r1.ebuild index f240ac606d9..bf2ab94c139 100644 --- a/net-libs/libpcap/libpcap-9999.ebuild +++ b/net-libs/libpcap/libpcap-1.9.1-r1.ebuild @@ -1,26 +1,27 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -inherit autotools git-r3 multilib-minimal ltprune +EAPI=7 +inherit autotools multilib-minimal DESCRIPTION="A system-independent library for user-level network packet capture" -EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" HOMEPAGE=" https://www.tcpdump.org/ - ${EGIT_REPO_URI} + https://github.com/the-tcpdump-group/libpcap +" +SRC_URI=" + https://github.com/the-tcpdump-group/${PN}/archive/${P/_}.tar.gz " LICENSE="BSD" SLOT="0" -IUSE="bluetooth dbus netlink static-libs usb" -KEYWORDS="" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" +IUSE="bluetooth dbus netlink -remote static-libs usb" RDEPEND=" bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) - usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] ) " DEPEND=" ${RDEPEND} @@ -29,14 +30,18 @@ DEPEND=" dbus? ( virtual/pkgconfig[${MULTILIB_USEDEP}] ) " +S=${WORKDIR}/${PN}-${P/_} + PATCHES=( - "${FILESDIR}"/${PN}-1.9.0-pcap-config-includedir.patch - "${FILESDIR}"/${PN}-9999-prefix-darwin.patch + "${FILESDIR}"/${PN}-1.8.1-usbmon.patch + "${FILESDIR}"/${PN}-1.9.1-pcap-config.patch ) src_prepare() { default + echo ${PV} > VERSION || die + eautoreconf } @@ -45,8 +50,10 @@ multilib_src_configure() { econf \ $(use_enable bluetooth) \ $(use_enable dbus) \ + $(use_enable remote) \ $(use_enable usb) \ - $(use_with netlink libnl) + $(use_with netlink libnl) \ + --enable-ipv6 } multilib_src_compile() { @@ -54,13 +61,14 @@ multilib_src_compile() { } multilib_src_install_all() { - dodoc CREDITS CHANGES VERSION TODO README* + dodoc CREDITS CHANGES VERSION TODO README.* doc/README.* # remove static libraries (--disable-static does not work) if ! use static-libs; then find "${ED}" -name '*.a' -exec rm {} + || die fi - prune_libtool_files + + find "${ED}" -name '*.la' -delete || die # We need this to build pppd on G/FBSD systems if [[ "${USERLAND}" == "BSD" ]]; then diff --git a/net-libs/libpcap/libpcap-9999.ebuild b/net-libs/libpcap/libpcap-9999.ebuild index f240ac606d9..1a75013c5b7 100644 --- a/net-libs/libpcap/libpcap-9999.ebuild +++ b/net-libs/libpcap/libpcap-9999.ebuild @@ -1,8 +1,8 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -inherit autotools git-r3 multilib-minimal ltprune +EAPI=7 +inherit autotools git-r3 multilib-minimal DESCRIPTION="A system-independent library for user-level network packet capture" EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" @@ -13,7 +13,7 @@ HOMEPAGE=" LICENSE="BSD" SLOT="0" -IUSE="bluetooth dbus netlink static-libs usb" +IUSE="bluetooth dbus netlink -remote static-libs usb" KEYWORDS="" RDEPEND=" @@ -45,6 +45,7 @@ multilib_src_configure() { econf \ $(use_enable bluetooth) \ $(use_enable dbus) \ + $(use_enable remote) \ $(use_enable usb) \ $(use_with netlink libnl) } @@ -60,7 +61,8 @@ multilib_src_install_all() { if ! use static-libs; then find "${ED}" -name '*.a' -exec rm {} + || die fi - prune_libtool_files + + find "${ED}" -name '*.la' -delete || die # We need this to build pppd on G/FBSD systems if [[ "${USERLAND}" == "BSD" ]]; then diff --git a/net-libs/libpcap/metadata.xml b/net-libs/libpcap/metadata.xml index 241fb6113b5..54d027060e7 100644 --- a/net-libs/libpcap/metadata.xml +++ b/net-libs/libpcap/metadata.xml @@ -7,6 +7,7 @@ </maintainer> <use> <flag name="netlink">Use <pkg>dev-libs/libnl</pkg> to put wireless interfaces in monitor mode.</flag> +<flag name="remote">Enable remote packet capture which may expose libpcap-based applications to attacks by malicious remote capture servers!</flag> </use> <upstream> <remote-id type="cpe">cpe:/a:tcpdump:libpcap</remote-id>