net-misc/lldpd: Revision bump, update seccomp patch to add missing syscalls
authorPatrick McLean <chutzpah@gentoo.org>
Fri, 10 Jun 2016 17:04:57 +0000 (10:04 -0700)
committerPatrick McLean <chutzpah@gentoo.org>
Fri, 10 Jun 2016 17:04:57 +0000 (10:04 -0700)
Gentoo-bug: 564566

Package-Manager: portage-2.3.0_rc1

net-misc/lldpd/files/lldpd-0.9-seccomp-missing-syscalls.patch
net-misc/lldpd/lldpd-0.9.3-r1.ebuild [new file with mode: 0644]

index be7d341e25ba829b751e9e68b300c6b47b63bc89..183306a90482fcdf9f04229f2cac95016588eda7 100644 (file)
@@ -1,8 +1,13 @@
 diff --git a/src/daemon/priv-seccomp.c b/src/daemon/priv-seccomp.c
-index bccd378..7cd8e7d 100644
+index bccd378..4f9e6e6 100644
 --- a/src/daemon/priv-seccomp.c
 +++ b/src/daemon/priv-seccomp.c
-@@ -152,6 +152,7 @@ priv_seccomp_init(int remote, int child)
+@@ -148,10 +148,12 @@ priv_seccomp_init(int remote, int child)
+       if ((rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(read), 0)) < 0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(write), 0)) < 0 || /* write needed for */
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(open), 0)) < 0 ||
++          (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(fcntl), 0)) < 0 ||
+           (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(kill), 0)) < 0 ||
            (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(socket), 0)) < 0 ||
            (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(bind), 0)) < 0 ||
            (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(setsockopt), 0)) < 0 ||
diff --git a/net-misc/lldpd/lldpd-0.9.3-r1.ebuild b/net-misc/lldpd/lldpd-0.9.3-r1.ebuild
new file mode 100644 (file)
index 0000000..7e0ac8a
--- /dev/null
@@ -0,0 +1,105 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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 jansson +lldpmed old-kernel
+       sanitizers seccomp sonmp snmp static-libs readline xml zsh-completion"
+
+RDEPEND="dev-libs/libbsd
+       >=dev-libs/libevent-2.0.5
+       snmp? ( net-analyzer/net-snmp[extensible(+)] )
+       xml? ( dev-libs/libxml2 )
+       jansson? ( dev-libs/jansson )
+       seccomp? ( sys-libs/libseccomp )
+       zsh-completion? ( app-shells/zsh )"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig
+       doc? (
+               graph? ( app-doc/doxygen[dot] )
+               !graph? ( app-doc/doxygen )
+       )"
+
+REQUIRED_USE="graph? ( doc )"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-0.7.11-zsh-completion-dir.patch"
+       "${FILESDIR}/${PN}-0.9-seccomp-missing-syscalls.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_with jansson json) \
+               $(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
+}