From e16c20f579725ccbf5b0998718b8a1f0c8a4f8cc Mon Sep 17 00:00:00 2001
From: Patrick McLean <chutzpah@gentoo.org>
Date: Tue, 7 Jun 2016 14:44:15 -0700
Subject: net-misc/lldpd: Version bump, add patch for seccomp stuff (bug
 #577576)

Package-Manager: portage-2.3.0_rc1
---
 net-misc/lldpd/Manifest                            |   1 +
 .../files/lldpd-0.9-seccomp-missing-syscalls.patch |  12 +++
 net-misc/lldpd/files/lldpd-initd-5                 |   1 +
 net-misc/lldpd/files/lldpd.conf                    |   1 +
 net-misc/lldpd/lldpd-0.9.3.ebuild                  | 105 +++++++++++++++++++++
 net-misc/lldpd/metadata.xml                        |   1 +
 6 files changed, 121 insertions(+)
 create mode 100644 net-misc/lldpd/files/lldpd-0.9-seccomp-missing-syscalls.patch
 create mode 100644 net-misc/lldpd/files/lldpd.conf
 create mode 100644 net-misc/lldpd/lldpd-0.9.3.ebuild

(limited to 'net-misc')

diff --git a/net-misc/lldpd/Manifest b/net-misc/lldpd/Manifest
index af1aeea3e3d9..58b4e3cd4c4d 100644
--- a/net-misc/lldpd/Manifest
+++ b/net-misc/lldpd/Manifest
@@ -1,3 +1,4 @@
 DIST lldpd-0.7.11.tar.gz 1509215 SHA256 5257169e0de6037e81efb1bcb26f6dd5755e3efa0a025144d6763bdfaf982e6b SHA512 7f5454ef4255a4fae0e323703d607bd93254b8a511984e434539d0305de1298f8bcf481beb2f121876bedc9890e6f1338cc30f5b08d7b5cf261cf87d5bb69bff WHIRLPOOL 710826936318099a562c7503653ce002c60256055e5f34d7328e7bc5397805c5790670efcc746a11f5abb5a2ff1b6590c888a3ccf02048f260f83a6ea855f28a
 DIST lldpd-0.7.13.tar.gz 1523864 SHA256 bbba3ef922f6b6cc6d2c0f008066dc882750557661c54dd1b97ae7936678d92d SHA512 3fa476a3e06e2d5c15a29a3b46bfd2e147bdd55884fef4748f1197454cde45f82d33e4cc66eb70e559a1e3ad150577781d308b2f39c08f86d75412368099d4a5 WHIRLPOOL c641e0f9f21ce9510a7e30f14ccc0ab34c54251ccbec5317a30504f5b4bca4b64e88391d7a252340490a919bb1d13764627404d1f2c2b9d19057f5b4ca561a97
 DIST lldpd-0.9.1.tar.gz 1600504 SHA256 16ad6d513a6a0c6c201ce4941693c0e9d6fce83bbfa3733620354d1ac9a60908 SHA512 3a6ea3051ceac689a65045c06dac4f788071291f6ab826286de54175cad48143daadb13f44a2d7ff8a97269ec7c1bf9dc337d929b8cbf256fe135d33f965b3ad WHIRLPOOL b71310da3e7626893fb00b8fc5553c80bb4dbabdabe9cabe028cb72767cfe2f0a46a6c3d09c15fc7cb1b7379b73a8eb9a9e6683ace25492f76a032834db13ce0
+DIST lldpd-0.9.3.tar.gz 1601102 SHA256 cfa8a3245dd71efc1f5de064a72576a7c1afaaf0ccb5833238398b6dc612b127 SHA512 0d40d77bfde78f9ceece56968981f3a36bd7e683b12de05e84e5da0409b8e0d06062e5d665942637a66164af0254a6ac3d1a327aab3bcb48ec91ecfdd2693283 WHIRLPOOL c7be527cf48bd5623ad9b7b3ae684a5e223114d7ff57a71a33623e3e445f6bbb612a6db5353844644c6340f039bdf7caf435b7ae19cf231ae54acf1dad72b62a
diff --git a/net-misc/lldpd/files/lldpd-0.9-seccomp-missing-syscalls.patch b/net-misc/lldpd/files/lldpd-0.9-seccomp-missing-syscalls.patch
new file mode 100644
index 000000000000..be7d341e25ba
--- /dev/null
+++ b/net-misc/lldpd/files/lldpd-0.9-seccomp-missing-syscalls.patch
@@ -0,0 +1,12 @@
+diff --git a/src/daemon/priv-seccomp.c b/src/daemon/priv-seccomp.c
+index bccd378..7cd8e7d 100644
+--- a/src/daemon/priv-seccomp.c
++++ b/src/daemon/priv-seccomp.c
+@@ -152,6 +152,7 @@ priv_seccomp_init(int remote, int child)
+ 	    (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 ||
++	    (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(getsockname), 0)) < 0 ||
+ 	    (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(uname), 0)) < 0 ||
+ 	    (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(unlink), 0)) < 0 ||
+ 	    (rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(ioctl), 0)) < 0 ||
diff --git a/net-misc/lldpd/files/lldpd-initd-5 b/net-misc/lldpd/files/lldpd-initd-5
index 5d59f2c78d0d..83a0aa653189 100644
--- a/net-misc/lldpd/files/lldpd-initd-5
+++ b/net-misc/lldpd/files/lldpd-initd-5
@@ -8,6 +8,7 @@ pidfile=/run/lldpd.pid
 command=/usr/sbin/lldpd
 retry="TERM/10/KILL/5"
 command_args="${LLDPD_OPTS}"
+start_stop_daemon_args="--wait 300"
 
 depend() {
 	use net
diff --git a/net-misc/lldpd/files/lldpd.conf b/net-misc/lldpd/files/lldpd.conf
new file mode 100644
index 000000000000..09233b720826
--- /dev/null
+++ b/net-misc/lldpd/files/lldpd.conf
@@ -0,0 +1 @@
+# empty placeholder configuration file for lldpd
diff --git a/net-misc/lldpd/lldpd-0.9.3.ebuild b/net-misc/lldpd/lldpd-0.9.3.ebuild
new file mode 100644
index 000000000000..7e0ac8ab7351
--- /dev/null
+++ b/net-misc/lldpd/lldpd-0.9.3.ebuild
@@ -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
+}
diff --git a/net-misc/lldpd/metadata.xml b/net-misc/lldpd/metadata.xml
index 0ea2a515da4d..4ca20a468e45 100644
--- a/net-misc/lldpd/metadata.xml
+++ b/net-misc/lldpd/metadata.xml
@@ -29,6 +29,7 @@ lldpd also implements CDP (Cisco Discovery Protocol), FDP (Foundry Discovery Pro
 		<flag name="json-c">Enable JSON output via json-c</flag>
 		<flag name="lldpmed">Enable LLDP-MED extension</flag>
 		<flag name="old-kernel">Enable compatibility with Linux kernel older than 2.6.39</flag>
+		<flag name="sanitizers">Enable code instrumentation with selected sanitizers</flag>
 		<flag name="sonmp">Enable SynOptics Network Management</flag>
 		<flag name="snmp">Enable the use of SNMP</flag>
 	</use>
-- 
cgit v1.2.3-65-gdbad