commit:     b41cdc9a3dab0701f044ed053a15690b5daa4410
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 20 21:30:11 2018 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Fri Jul 20 21:30:35 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b41cdc9a

net-misc/lldpd: Revision bump, allow brk with seccomp (bug #657932)

Closes: https://bugs.gentoo.org/657932
Package-Manager: Portage-2.3.43, Repoman-2.3.10

 .../lldpd/files/lldpd-1.0.1-seccomp-add-brk.patch  |  11 +++
 net-misc/lldpd/lldpd-1.0.1-r1.ebuild               | 103 +++++++++++++++++++++
 2 files changed, 114 insertions(+)

diff --git a/net-misc/lldpd/files/lldpd-1.0.1-seccomp-add-brk.patch 
b/net-misc/lldpd/files/lldpd-1.0.1-seccomp-add-brk.patch
new file mode 100644
index 00000000000..40cc428ec8f
--- /dev/null
+++ b/net-misc/lldpd/files/lldpd-1.0.1-seccomp-add-brk.patch
@@ -0,0 +1,11 @@
+diff -purN lldpd-1.0.1.orig/src/daemon/priv-seccomp.c 
lldpd-1.0.1/src/daemon/priv-seccomp.c
+--- lldpd-1.0.1.orig/src/daemon/priv-seccomp.c 2018-06-12 07:48:04.282557213 
+0200
++++ lldpd-1.0.1/src/daemon/priv-seccomp.c      2018-06-12 07:52:26.214348537 
+0200
+@@ -162,6 +162,7 @@ priv_seccomp_init(int remote, int child)
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(sendmmsg), 0)) 
< 0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(wait4), 0)) < 
0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(stat), 0)) < 0 
||
++          (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(brk), 0)) < 0 
|| /* brk needed for newer libc */
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(getpid), 0)) < 
0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(rt_sigreturn), 
0)) < 0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(close), 0)) < 
0 ||

diff --git a/net-misc/lldpd/lldpd-1.0.1-r1.ebuild 
b/net-misc/lldpd/lldpd-1.0.1-r1.ebuild
new file mode 100644
index 00000000000..88ddeebee8d
--- /dev/null
+++ b/net-misc/lldpd/lldpd-1.0.1-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils user systemd bash-completion-r1 autotools
+
+DESCRIPTION="Implementation of IEEE 802.1ab (LLDP)"
+HOMEPAGE="https://vincentbernat.github.com/lldpd/";
+SRC_URI="http://media.luffy.cx/files/${PN}/${P}.tar.gz";
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cdp doc +dot1 +dot3 edp fdp graph +lldpmed old-kernel sanitizers
+       seccomp sonmp snmp static-libs test readline xml zsh-completion"
+
+RDEPEND="dev-libs/libbsd
+       >=dev-libs/libevent-2.0.5:=
+       snmp? ( net-analyzer/net-snmp[extensible(+)] )
+       xml? ( dev-libs/libxml2 )
+       seccomp? ( sys-libs/libseccomp )
+       zsh-completion? ( app-shells/zsh )"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig
+       doc? (
+               graph? ( app-doc/doxygen[dot] )
+               !graph? ( app-doc/doxygen )
+       )
+       test? ( dev-libs/check )"
+
+REQUIRED_USE="graph? ( doc )"
+
+PATCHES=(
+       "${FILESDIR}/lldpd-0.9.5-seccomp-add-socket-ops.patch"
+       "${FILESDIR}/lldpd-1.0.1-seccomp-add-brk.patch"
+)
+
+pkg_setup() {
+       ebegin "Creating lldpd user and group"
+       enewgroup ${PN}
+       enewuser ${PN} -1 -1 -1 ${PN}
+       eend $?
+}
+
+src_prepare() {
+       default
+
+       eautoreconf
+       elibtoolize
+}
+
+src_configure() {
+       econf \
+               --without-embedded-libevent \
+               --with-privsep-user=${PN} \
+               --with-privsep-group=${PN} \
+               --with-privsep-chroot=/run/${PN} \
+               --with-lldpd-ctl-socket=/run/${PN}.socket \
+               --with-lldpd-pid-file=/run/${PN}.pid \
+               --docdir=/usr/share/doc/${PF} \
+               $(use_enable cdp) \
+               $(use_enable doc doxygen-man) \
+               $(use_enable doc doxygen-pdf) \
+               $(use_enable doc doxygen-html) \
+               $(use_enable dot1) \
+               $(use_enable dot3) \
+               $(use_enable edp) \
+               $(use_enable fdp) \
+               $(use_enable graph doxygen-dot) \
+               $(use_enable lldpmed) \
+               $(use_enable old-kernel oldies) \
+               $(use_enable sonmp) \
+               $(use_enable static-libs static) \
+               $(use_with readline) \
+               $(use_enable sanitizers) \
+               $(use_with seccomp) \
+               $(use_with snmp) \
+               $(use_with xml)
+}
+
+src_compile() {
+       emake
+       use doc && emake doxygen-doc
+}
+
+src_install() {
+       emake DESTDIR="${D}" install
+       prune_libtool_files
+
+       newinitd "${FILESDIR}"/${PN}-initd-5 ${PN}
+       newconfd "${FILESDIR}"/${PN}-confd-1 ${PN}
+       newbashcomp src/client/completion/lldpcli lldpcli
+
+       use doc && dodoc -r doxygen/html
+
+       insinto /etc
+       doins "${FILESDIR}/lldpd.conf"
+       keepdir /etc/${PN}.d
+
+       systemd_dounit "${FILESDIR}"/${PN}.service
+       systemd_newtmpfilesd "${FILESDIR}"/tmpfilesd ${PN}.conf
+}

Reply via email to