public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2015-09-06 15:37 Lars Wendler
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Wendler @ 2015-09-06 15:37 UTC (permalink / raw
  To: gentoo-commits

commit:     6e63f6ae9ce139c4a6e049a503828ec8a7b1057e
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  6 15:34:40 2015 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Sep  6 15:37:34 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e63f6ae

net-misc/dhcp: Bump to version 4.3.3

Package-Manager: portage-2.2.20.1
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-misc/dhcp/Manifest                            |   1 +
 net-misc/dhcp/dhcp-4.3.3.ebuild                   | 254 ++++++++++++++++++++++
 net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch |  30 +++
 3 files changed, 285 insertions(+)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index ef99fa7..d4813d9 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1,3 +1,4 @@
 DIST dhcp-4.2.5-P1.tar.gz 8255960 SHA256 59b06c9f5d775e46999b422c45b9229402c462b114ce1685617bfb2b8b028250 SHA512 02a811b6e88ce013f7ecff6abf81d4b2aff82fff584521ae03fc3242b6036d0d0ad3afc6283fe8b97d18b8fffd4b6d2253386897ae2297c165240017f5f219ec WHIRLPOOL b8cf91c69ae0e1b234089ce3fae4b9daf5bde7f415d8cbc274ab4d006c8aa25f55807c70ba4c6771e0c9803ec5a99f8cc2088e561cac7d16479f5f022ee5459f
 DIST dhcp-4.3.1.tar.gz 8980806 SHA256 266cbca8a7a6bb8f9ccc5765da0d2b04099329314a54a4fc1022d510ad3e9af0 SHA512 84ca525fda825bf367a98754f1fb1b8eba5b095c92c25ddaec6e30b31008c7d5c43062ae43cecaa43731a8e78ae406a3123906fd402d2ba4b46b7adbae65aa6a WHIRLPOOL 3fd3720f6883b43856d2169264ee2adfb541b793604728c4e5cc3b647d4a88d6245fb6e53062de4118301cc15f0b4388363eba304bf3623dfb88c91bde94b2b6
 DIST dhcp-4.3.2.tar.gz 9230340 SHA256 6246c9b358759f6cdcc45104caaf76e732a211dbbbbf64a21f499c8db1298165 SHA512 b91a0a90736c6e8bd66a74af8c67949c81db3148eba23ee647f0987bbd98543f0dfd1605c94e152b28a606bbbecd94cd8a8112db5f5fe4c3d041101bda1b95da WHIRLPOOL a201cea52e96517ff1dae2b6c05b05da11feb4c2eed6dca539ea5ab3185711377cd7f7ed9ecc5e5f2bc30bc84d73a85d4140154c43b4f0f27a7e0a4a51f56787
+DIST dhcp-4.3.3.tar.gz 9205539 SHA256 553c4945b09b1c1b904c4780f34f72aaefa2fc8c6556715de0bc9d4e3d255ede SHA512 33671816e21456ffec57e2c9ab2d129377096b4e2e5b4ca8194dcd9495c6a9e18a2a5e79d4f05694f3dc841895aa0adb63afd7bd6fe4641eb5a80d3fd7e715d9 WHIRLPOOL 27e7f2fdd1f1f7b3309b444a67e21d139468317538345cc3599e6a47f20489fa5d07018eabe8e32c429f2f16f03c28b22b29bff2ab08972f541c63603bd3df9a

diff --git a/net-misc/dhcp/dhcp-4.3.3.ebuild b/net-misc/dhcp/dhcp-4.3.3.ebuild
new file mode 100644
index 0000000..b5a75fa
--- /dev/null
+++ b/net-misc/dhcp/dhcp-4.3.3.ebuild
@@ -0,0 +1,254 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils systemd toolchain-funcs user
+
+MY_PV="${PV//_alpha/a}"
+MY_PV="${MY_PV//_beta/b}"
+MY_PV="${MY_PV//_rc/rc}"
+MY_PV="${MY_PV//_p/-P}"
+MY_P="${PN}-${MY_PV}"
+DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
+HOMEPAGE="http://www.isc.org/products/DHCP"
+SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
+	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
+
+LICENSE="ISC BSD SSLeay GPL-2" # GPL-2 only for init script
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="+client ipv6 kernel_linux ldap selinux +server ssl vim-syntax"
+
+DEPEND="
+	client? (
+		kernel_linux? (
+			ipv6? ( sys-apps/iproute2 )
+			sys-apps/net-tools
+		)
+	)
+	ldap? (
+		net-nds/openldap
+		ssl? ( dev-libs/openssl )
+	)"
+RDEPEND="${DEPEND}
+	selinux? ( sec-policy/selinux-dhcp )
+	vim-syntax? ( app-vim/dhcpd-syntax )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+	unpack ${A}
+	# handle local bind hell
+	cd "${S}"/bind
+	unpack ./bind.tar.gz
+}
+
+src_prepare() {
+	# Gentoo patches - these will probably never be accepted upstream
+	# Fix some permission issues
+	epatch "${FILESDIR}"/${PN}-3.0-fix-perms.patch
+	# Enable dhclient to equery NTP servers
+	epatch "${FILESDIR}"/${PN}-4.0-dhclient-ntp.patch
+	epatch "${FILESDIR}"/${PN}-4.3.1-dhclient-resolvconf.patch
+	# Stop downing the interface on Linux as that breaks link daemons
+	# such as wpa_supplicant and netplug
+	epatch "${FILESDIR}"/${PN}-3.0.3-dhclient-no-down.patch
+	# Enable dhclient to get extra configuration from stdin
+	epatch "${FILESDIR}"/${PN}-4.2.2-dhclient-stdin-conf.patch
+	epatch "${FILESDIR}"/${PN}-4.2.2-nogateway.patch #265531
+	epatch "${FILESDIR}"/${PN}-4.2.4-quieter-ping.patch #296921
+	epatch "${FILESDIR}"/${PN}-4.2.4-always-accept-4.patch #437108
+	epatch "${FILESDIR}"/${PN}-4.2.5-iproute2-path.patch #480636
+	epatch "${FILESDIR}"/${PN}-4.2.5-bindtodevice-inet6.patch #471142
+
+	# Brand the version with Gentoo
+	sed -i \
+		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
+		configure || die
+
+	# Change the hook script locations of the scripts
+	sed -i \
+		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
+		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
+		client/scripts/* || die
+
+	# No need for the linux script to force bash #158540
+	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
+
+	# Quiet the freebsd logger a little
+	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
+
+	# Remove these options from the sample config
+	sed -i -r \
+		-e "/(script|host-name|domain-name) /d" \
+		client/dhclient.conf.example || die
+
+	if use client && ! use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
+			Makefile.in || die
+	elif ! use client && use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<client\>::' \
+			Makefile.in || die
+	fi
+
+	# Only install different man pages if we don't have en
+	if [[ " ${LINGUAS} " != *" en "* ]]; then
+		# Install Japanese man pages
+		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
+			einfo "Installing Japanese documention"
+			cp doc/ja_JP.eucJP/dhclient* client
+			cp doc/ja_JP.eucJP/dhcp* common
+		fi
+	fi
+	# Now remove the non-english docs so there are no errors later
+	rm -rf doc/ja_JP.eucJP
+
+	# make the bind build work
+	binddir=${S}/bind
+	cd "${binddir}" || die
+	cat <<-EOF > bindvar.tmp
+	binddir=${binddir}
+	GMAKE=${MAKE:-gmake}
+	EOF
+	epatch "${FILESDIR}"/${PN}-4.3.3-bind-disable.patch
+	cd bind-*/
+	epatch "${FILESDIR}"/${PN}-4.2.2-bind-parallel-build.patch #380717
+	epatch "${FILESDIR}"/${PN}-4.2.2-bind-build-flags.patch
+}
+
+src_configure() {
+	# bind defaults to stupid `/usr/bin/ar`
+	tc-export AR BUILD_CC
+	export ac_cv_path_AR=${AR}
+
+	# this is tested for by the bind build system, and can cause trouble
+	# when cross-building; since dhcp itself doesn't make use of libcap,
+	# simply disable it.
+	export ac_cv_lib_cap_cap_set_proc=no
+
+	# Use FHS sane paths ... some of these have configure options,
+	# but not all, so just do it all here.
+	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
+	cat <<-EOF >> includes/site.h
+	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
+	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
+	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
+	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
+	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
+	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
+	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
+	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
+	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
+	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
+	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
+	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
+	EOF
+
+	econf \
+		--enable-paranoia \
+		--enable-early-chroot \
+		--sysconfdir=${e} \
+		$(use_enable ipv6 dhcpv6) \
+		$(use_with ldap) \
+		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
+
+	# configure local bind cruft.  symtable option requires
+	# perl and we don't want to require that #383837.
+	cd bind/bind-*/ || die
+	eval econf \
+		$(sed -n '/^bindconfig =/,/^$/{:a;N;$!ba;s,^[^-]*,,;s,\\\s*\n\s*--,--,g;s, @[[:upper:]]\+@,,g;P;D}' ../Makefile.in) \
+		--disable-symtable \
+		--without-make-clean
+}
+
+src_compile() {
+	# build local bind cruft first
+	emake -C bind/bind-*/lib/export install
+	# then build standard dhcp code
+	emake AR="$(tc-getAR)"
+}
+
+src_install() {
+	default
+
+	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
+	dohtml doc/References.html
+
+	if [[ -e client/dhclient ]] ; then
+		# move the client to /
+		dodir /sbin
+		mv "${D}"/usr/sbin/dhclient "${D}"/sbin/ || die
+
+		exeinto /sbin
+		if use kernel_linux ; then
+			newexe "${S}"/client/scripts/linux dhclient-script
+		else
+			newexe "${S}"/client/scripts/freebsd dhclient-script
+		fi
+	fi
+
+	if [[ -e server/dhcpd ]] ; then
+		if use ldap ; then
+			insinto /etc/openldap/schema
+			doins contrib/ldap/dhcp.*
+			dosbin contrib/ldap/dhcpd-conf-to-ldap
+		fi
+
+		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
+		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
+		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
+		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
+
+		systemd_newtmpfilesd "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
+		systemd_dounit "${FILESDIR}"/dhcpd4.service
+		systemd_dounit "${FILESDIR}"/dhcpd6.service
+		systemd_dounit "${FILESDIR}"/dhcrelay4.service
+		systemd_dounit "${FILESDIR}"/dhcrelay6.service
+		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
+		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
+
+		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
+	fi
+
+	# the default config files aren't terribly useful #384087
+	local f
+	for f in "${ED}"/etc/dhcp/*.conf.example ; do
+		mv "${f}" "${f%.example}" || die
+	done
+	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
+}
+
+pkg_preinst() {
+	enewgroup dhcp
+	enewuser dhcp -1 -1 /var/lib/dhcp dhcp
+
+	# Keep the user files over the sample ones.  The
+	# hashing is to ignore the crappy defaults #384087.
+	local f h
+	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
+		h=${f#*:}
+		f="/etc/dhcp/${f%:*}.conf"
+		if [ -e "${EROOT}"${f} ] ; then
+			case $(md5sum "${EROOT}"${f}) in
+				${h}*) ;;
+				*) cp -p "${EROOT}"${f} "${ED}"${f};;
+			esac
+		fi
+	done
+}
+
+pkg_postinst() {
+	if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then
+		ewarn
+		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
+		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
+		ewarn "and dhcp should be removed from the default runlevel"
+		ewarn
+	fi
+}

diff --git a/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch
new file mode 100644
index 0000000..1064bbf
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch
@@ -0,0 +1,30 @@
+--- dhcp-4.3.3/bind/Makefile.in
++++ dhcp-4.3.3/bind/Makefile.in
+@@ -40,6 +40,7 @@
+ @BIND_ATF_TRUE@all: bind1 atf bind2
+ 
+ bind1:
++disable:
+ # Extract the source from the tarball, if it hasn't been already.
+ 	@if test -d ${bindsrcdir} ; then                    \
+ 		echo ${bindsrcdir} already unpacked... ;    \
+@@ -68,6 +69,7 @@
+ 	fi
+ 
+ atf:
++disable:
+ # Build and copy the ATF support if not yet installed.
+ 	@if test -d ./atf ; then				      \
+ 		echo ATF support already installed ;		      \
+@@ -79,6 +81,7 @@
+ 	fi
+ 
+ bind2:
++disable:
+ # Build and install the export libraries
+ # No need to do anything if we already have something installed.
+ 	@if test -d ${binddir}/lib ; then                                    \
+--- dhcp-4.3.3/bind/test
++++ dhcp-4.3.3/bind/test
+@@ -0,0 +1 @@
++--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2015-09-16 15:50 Mike Frysinger
  0 siblings, 0 replies; 8+ messages in thread
From: Mike Frysinger @ 2015-09-16 15:50 UTC (permalink / raw
  To: gentoo-commits

commit:     31aa8f44b17b5139a6aad2cb874dd886308a4958
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 16 15:50:24 2015 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Wed Sep 16 15:50:35 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31aa8f44

net-misc/dhcp: fix build with USE="ldap -ipv6" #559832

 net-misc/dhcp/dhcp-4.3.3.ebuild                    |  1 +
 .../files/dhcp-4.3.3-ldap-ipv6-client-id.patch     | 81 ++++++++++++++++++++++
 2 files changed, 82 insertions(+)

diff --git a/net-misc/dhcp/dhcp-4.3.3.ebuild b/net-misc/dhcp/dhcp-4.3.3.ebuild
index b5a75fa..a2c42d4 100644
--- a/net-misc/dhcp/dhcp-4.3.3.ebuild
+++ b/net-misc/dhcp/dhcp-4.3.3.ebuild
@@ -62,6 +62,7 @@ src_prepare() {
 	epatch "${FILESDIR}"/${PN}-4.2.4-always-accept-4.patch #437108
 	epatch "${FILESDIR}"/${PN}-4.2.5-iproute2-path.patch #480636
 	epatch "${FILESDIR}"/${PN}-4.2.5-bindtodevice-inet6.patch #471142
+	epatch "${FILESDIR}"/${PN}-4.3.3-ldap-ipv6-client-id.patch #559832
 
 	# Brand the version with Gentoo
 	sed -i \

diff --git a/net-misc/dhcp/files/dhcp-4.3.3-ldap-ipv6-client-id.patch b/net-misc/dhcp/files/dhcp-4.3.3-ldap-ipv6-client-id.patch
new file mode 100644
index 0000000..2a7f818
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.3.3-ldap-ipv6-client-id.patch
@@ -0,0 +1,81 @@
+https://bugs.gentoo.org/559832
+
+the get_client_id func is used outside of IPv6 code, so don't store it in the
+IPv6-specific dhcpv6.c file.  otherwise, building w/out IPv6 & w/ldap yields:
+dhcpd-ldap.o: In function 'find_client_in_ldap':
+ldap.c:(.text+0x4774): undefined reference to 'get_client_id'
+
+--- a/server/dhcpleasequery.c
++++ b/server/dhcpleasequery.c
+@@ -33,6 +33,34 @@
+  *       DoS'ed by DHCPLEASEQUERY message.
+  */
+ 
++/*
++ * Get the client identifier from the packet.
++ */
++isc_result_t
++get_client_id(struct packet *packet, struct data_string *client_id) {
++	struct option_cache *oc;
++
++	/*
++	 * Verify our client_id structure is empty.
++	 */
++	if ((client_id->data != NULL) || (client_id->len != 0)) {
++		return DHCP_R_INVALIDARG;
++	}
++
++	oc = lookup_option(&dhcpv6_universe, packet->options, D6O_CLIENTID);
++	if (oc == NULL) {
++		return ISC_R_NOTFOUND;
++	}
++
++	if (!evaluate_option_cache(client_id, packet, NULL, NULL,
++				   packet->options, NULL,
++				   &global_scope, oc, MDL)) {
++		return ISC_R_FAILURE;
++	}
++
++	return ISC_R_SUCCESS;
++}
++
+ /* 
+  * If you query by hardware address or by client ID, then you may have
+  * more than one IP address for your query argument. We need to do two
+--- a/server/dhcpv6.c
++++ b/server/dhcpv6.c
+@@ -392,34 +392,6 @@ generate_new_server_duid(void) {
+ }
+ 
+ /*
+- * Get the client identifier from the packet.
+- */
+-isc_result_t
+-get_client_id(struct packet *packet, struct data_string *client_id) {
+-	struct option_cache *oc;
+-
+-	/*
+-	 * Verify our client_id structure is empty.
+-	 */
+-	if ((client_id->data != NULL) || (client_id->len != 0)) {
+-		return DHCP_R_INVALIDARG;
+-	}
+-
+-	oc = lookup_option(&dhcpv6_universe, packet->options, D6O_CLIENTID);
+-	if (oc == NULL) {
+-		return ISC_R_NOTFOUND;
+-	}
+-
+-	if (!evaluate_option_cache(client_id, packet, NULL, NULL,
+-				   packet->options, NULL,
+-				   &global_scope, oc, MDL)) {
+-		return ISC_R_FAILURE;
+-	}
+-
+-	return ISC_R_SUCCESS;
+-}
+-
+-/*
+  * Message validation, defined in RFC 3315, sections 15.2, 15.5, 15.7:
+  *
+  *    Servers MUST discard any Solicit messages that do not include a


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2017-01-17 16:23 Lars Wendler
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Wendler @ 2017-01-17 16:23 UTC (permalink / raw
  To: gentoo-commits

commit:     c417d2a49de69fa60b408e6bc9c2a372caffe1f8
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 17 15:58:30 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Jan 17 16:23:30 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c417d2a4

net-misc/dhcp: Security cleanup (bug #576866).

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 net-misc/dhcp/Manifest                             |   1 -
 net-misc/dhcp/dhcp-4.3.3_p1.ebuild                 | 258 -------------
 net-misc/dhcp/files/dhcp-4.0-dhclient-ntp.patch    | 216 -----------
 .../dhcp/files/dhcp-4.2.0-errwarn-message.patch    |  31 --
 .../files/dhcp-4.2.2-dhclient-resolvconf.patch     | 409 ---------------------
 net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch  |  30 --
 6 files changed, 945 deletions(-)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index f3d15ab..3341a29 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1,3 +1,2 @@
-DIST dhcp-4.3.3-P1.tar.gz 9204043 SHA256 c11e896dffa1bfbc49462965d3f6dec45534e34068603546d9a236f2aa669921 SHA512 7e14268b4acaa82c807af9d956f76f4327a9a75d36273a244fef74dbd54e7506e8b38ce6035e56f61ab09a19bfc0a40599f76c89dc342514f1048b5ac3b2a0eb WHIRLPOOL a0a6873e2f1625cfa208c328ed2d6ec507e239456d6eba24f5731a83ba16f5fbb36f0d6d99fd33fb9045cbf051116196a57c6c2ded2b36e93964475ad29d2b0e
 DIST dhcp-4.3.4.tar.gz 9302513 SHA256 f5115aee3dd3e6925de4ba47b80ab732ba48b481c8364b6ebade2d43698d607e SHA512 411c3f0e1effedb2a95f00539d13164530a56b50830008eb78906b3c8bf4070c331cf54a431770aed5d1b6ba214840446964210060674f746781cc97842ad706 WHIRLPOOL ea283592268c8efabd7fec430bd21c45306822b9275c91ee1e604d09e92f9eb3c50941ea11ecd9dcb230caec3b8e6ee94958e8eb6375e0ca0e7a64a8aaf63bce
 DIST dhcp-4.3.5.tar.gz 10075147 SHA256 eb95936bf15d2393c55dd505bc527d1d4408289cec5a9fa8abb99f7577e7f954 SHA512 aba0e1d361eb9e7ed33fc48c0b0b9288057af9ec51775e40e27feb9ababc182506706fcf39079236ce36b0f7ded391e107474dc29de2e60ed45d37753505e1f0 WHIRLPOOL 85012016d81efb7654ec417e7a0f1a6145e8e143b13d6d9470d0fb7caf37c035441d5b2b8849d332f8ad0a9a6509bb0b931ac8f207f7ba9104e96811c0360124

diff --git a/net-misc/dhcp/dhcp-4.3.3_p1.ebuild b/net-misc/dhcp/dhcp-4.3.3_p1.ebuild
deleted file mode 100644
index 60860e6..00000000
--- a/net-misc/dhcp/dhcp-4.3.3_p1.ebuild
+++ /dev/null
@@ -1,258 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit eutils systemd toolchain-funcs user
-
-MY_PV="${PV//_alpha/a}"
-MY_PV="${MY_PV//_beta/b}"
-MY_PV="${MY_PV//_rc/rc}"
-MY_PV="${MY_PV//_p/-P}"
-MY_P="${PN}-${MY_PV}"
-DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
-HOMEPAGE="http://www.isc.org/products/DHCP"
-SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
-	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
-
-LICENSE="ISC BSD SSLeay GPL-2" # GPL-2 only for init script
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
-IUSE="+client ipv6 kernel_linux ldap libressl selinux +server ssl vim-syntax"
-
-DEPEND="
-	client? (
-		kernel_linux? (
-			ipv6? ( sys-apps/iproute2 )
-			sys-apps/net-tools
-		)
-	)
-	ldap? (
-		net-nds/openldap
-		ssl? (
-			!libressl? ( dev-libs/openssl:0 )
-			libressl? ( dev-libs/libressl )
-		)
-	)"
-RDEPEND="${DEPEND}
-	selinux? ( sec-policy/selinux-dhcp )
-	vim-syntax? ( app-vim/dhcpd-syntax )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_unpack() {
-	unpack ${A}
-	# handle local bind hell
-	cd "${S}"/bind
-	unpack ./bind.tar.gz
-}
-
-src_prepare() {
-	# Gentoo patches - these will probably never be accepted upstream
-	# Fix some permission issues
-	epatch "${FILESDIR}"/${PN}-3.0-fix-perms.patch
-	# Enable dhclient to equery NTP servers
-	epatch "${FILESDIR}"/${PN}-4.0-dhclient-ntp.patch
-	epatch "${FILESDIR}"/${PN}-4.3.1-dhclient-resolvconf.patch
-	# Stop downing the interface on Linux as that breaks link daemons
-	# such as wpa_supplicant and netplug
-	epatch "${FILESDIR}"/${PN}-3.0.3-dhclient-no-down.patch
-	# Enable dhclient to get extra configuration from stdin
-	epatch "${FILESDIR}"/${PN}-4.2.2-dhclient-stdin-conf.patch
-	epatch "${FILESDIR}"/${PN}-4.2.2-nogateway.patch #265531
-	epatch "${FILESDIR}"/${PN}-4.2.4-quieter-ping.patch #296921
-	epatch "${FILESDIR}"/${PN}-4.2.4-always-accept-4.patch #437108
-	epatch "${FILESDIR}"/${PN}-4.2.5-iproute2-path.patch #480636
-	epatch "${FILESDIR}"/${PN}-4.2.5-bindtodevice-inet6.patch #471142
-	epatch "${FILESDIR}"/${PN}-4.3.3-ldap-ipv6-client-id.patch #559832
-
-	# Brand the version with Gentoo
-	sed -i \
-		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
-		configure || die
-
-	# Change the hook script locations of the scripts
-	sed -i \
-		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
-		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
-		client/scripts/* || die
-
-	# No need for the linux script to force bash #158540
-	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
-
-	# Quiet the freebsd logger a little
-	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
-
-	# Remove these options from the sample config
-	sed -i -r \
-		-e "/(script|host-name|domain-name) /d" \
-		client/dhclient.conf.example || die
-
-	if use client && ! use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
-			Makefile.in || die
-	elif ! use client && use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<client\>::' \
-			Makefile.in || die
-	fi
-
-	# Only install different man pages if we don't have en
-	if [[ " ${LINGUAS} " != *" en "* ]]; then
-		# Install Japanese man pages
-		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
-			einfo "Installing Japanese documention"
-			cp doc/ja_JP.eucJP/dhclient* client
-			cp doc/ja_JP.eucJP/dhcp* common
-		fi
-	fi
-	# Now remove the non-english docs so there are no errors later
-	rm -rf doc/ja_JP.eucJP
-
-	# make the bind build work
-	binddir=${S}/bind
-	cd "${binddir}" || die
-	cat <<-EOF > bindvar.tmp
-	binddir=${binddir}
-	GMAKE=${MAKE:-gmake}
-	EOF
-	epatch "${FILESDIR}"/${PN}-4.3.3-bind-disable.patch
-	cd bind-*/
-	epatch "${FILESDIR}"/${PN}-4.2.2-bind-parallel-build.patch #380717
-	epatch "${FILESDIR}"/${PN}-4.2.2-bind-build-flags.patch
-}
-
-src_configure() {
-	# bind defaults to stupid `/usr/bin/ar`
-	tc-export AR BUILD_CC
-	export ac_cv_path_AR=${AR}
-
-	# this is tested for by the bind build system, and can cause trouble
-	# when cross-building; since dhcp itself doesn't make use of libcap,
-	# simply disable it.
-	export ac_cv_lib_cap_cap_set_proc=no
-
-	# Use FHS sane paths ... some of these have configure options,
-	# but not all, so just do it all here.
-	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
-	cat <<-EOF >> includes/site.h
-	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
-	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
-	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
-	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
-	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
-	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
-	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
-	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
-	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
-	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
-	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
-	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
-	EOF
-
-	econf \
-		--enable-paranoia \
-		--enable-early-chroot \
-		--sysconfdir=${e} \
-		$(use_enable ipv6 dhcpv6) \
-		$(use_with ldap) \
-		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
-
-	# configure local bind cruft.  symtable option requires
-	# perl and we don't want to require that #383837.
-	cd bind/bind-*/ || die
-	eval econf \
-		$(sed -n '/^bindconfig =/,/^$/{:a;N;$!ba;s,^[^-]*,,;s,\\\s*\n\s*--,--,g;s, @[[:upper:]]\+@,,g;P;D}' ../Makefile.in) \
-		--disable-symtable \
-		--without-make-clean
-}
-
-src_compile() {
-	# build local bind cruft first
-	emake -C bind/bind-*/lib/export install
-	# then build standard dhcp code
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-
-	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
-	dohtml doc/References.html
-
-	if [[ -e client/dhclient ]] ; then
-		# move the client to /
-		dodir /sbin
-		mv "${D}"/usr/sbin/dhclient "${D}"/sbin/ || die
-
-		exeinto /sbin
-		if use kernel_linux ; then
-			newexe "${S}"/client/scripts/linux dhclient-script
-		else
-			newexe "${S}"/client/scripts/freebsd dhclient-script
-		fi
-	fi
-
-	if [[ -e server/dhcpd ]] ; then
-		if use ldap ; then
-			insinto /etc/openldap/schema
-			doins contrib/ldap/dhcp.*
-			dosbin contrib/ldap/dhcpd-conf-to-ldap
-		fi
-
-		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
-		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
-		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
-		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
-
-		systemd_newtmpfilesd "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
-		systemd_dounit "${FILESDIR}"/dhcpd4.service
-		systemd_dounit "${FILESDIR}"/dhcpd6.service
-		systemd_dounit "${FILESDIR}"/dhcrelay4.service
-		systemd_dounit "${FILESDIR}"/dhcrelay6.service
-		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
-		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
-
-		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
-	fi
-
-	# the default config files aren't terribly useful #384087
-	local f
-	for f in "${ED}"/etc/dhcp/*.conf.example ; do
-		mv "${f}" "${f%.example}" || die
-	done
-	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
-}
-
-pkg_preinst() {
-	enewgroup dhcp
-	enewuser dhcp -1 -1 /var/lib/dhcp dhcp
-
-	# Keep the user files over the sample ones.  The
-	# hashing is to ignore the crappy defaults #384087.
-	local f h
-	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
-		h=${f#*:}
-		f="/etc/dhcp/${f%:*}.conf"
-		if [ -e "${EROOT}"${f} ] ; then
-			case $(md5sum "${EROOT}"${f}) in
-				${h}*) ;;
-				*) cp -p "${EROOT}"${f} "${ED}"${f};;
-			esac
-		fi
-	done
-}
-
-pkg_postinst() {
-	if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then
-		ewarn
-		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
-		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
-		ewarn "and dhcp should be removed from the default runlevel"
-		ewarn
-	fi
-}

diff --git a/net-misc/dhcp/files/dhcp-4.0-dhclient-ntp.patch b/net-misc/dhcp/files/dhcp-4.0-dhclient-ntp.patch
deleted file mode 100644
index d3f2971..00000000
--- a/net-misc/dhcp/files/dhcp-4.0-dhclient-ntp.patch
+++ /dev/null
@@ -1,216 +0,0 @@
-diff -uNr dhcp-4.0.0.ORIG/client/clparse.c dhcp-4.0.0/client/clparse.c
---- dhcp-4.0.0.ORIG/client/clparse.c	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/clparse.c	2008-09-01 11:48:17.000000000 +0100
-@@ -37,7 +37,7 @@
- 
- struct client_config top_level_config;
- 
--#define NUM_DEFAULT_REQUESTED_OPTS	9
-+#define NUM_DEFAULT_REQUESTED_OPTS	10
- struct option *default_requested_options[NUM_DEFAULT_REQUESTED_OPTS + 1];
- 
- static void parse_client_default_duid(struct parse *cfile);
-@@ -98,15 +98,20 @@
- 				dhcp_universe.code_hash, &code, 0, MDL);
- 
- 	/* 8 */
--	code = D6O_NAME_SERVERS;
-+	code = DHO_NTP_SERVERS;
- 	option_code_hash_lookup(&default_requested_options[7],
--				dhcpv6_universe.code_hash, &code, 0, MDL);
-+				dhcp_universe.code_hash, &code, 0, MDL);
- 
- 	/* 9 */
--	code = D6O_DOMAIN_SEARCH;
-+	code = D6O_NAME_SERVERS;
- 	option_code_hash_lookup(&default_requested_options[8],
- 				dhcpv6_universe.code_hash, &code, 0, MDL);
- 
-+	/* 10 */
-+	code = D6O_DOMAIN_SEARCH;
-+	option_code_hash_lookup(&default_requested_options[9],
-+				dhcpv6_universe.code_hash, &code, 0, MDL);
-+
- 	for (code = 0 ; code < NUM_DEFAULT_REQUESTED_OPTS ; code++) {
- 		if (default_requested_options[code] == NULL)
- 			log_fatal("Unable to find option definition for "
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/bsdos dhcp-4.0.0/client/scripts/bsdos
---- dhcp-4.0.0.ORIG/client/scripts/bsdos	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/bsdos	2008-09-01 11:39:30.000000000 +0100
-@@ -29,6 +29,26 @@
- 
-     mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ x$new_ntp_servers != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/freebsd dhcp-4.0.0/client/scripts/freebsd
---- dhcp-4.0.0.ORIG/client/scripts/freebsd	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/freebsd	2008-09-01 11:39:30.000000000 +0100
-@@ -73,6 +73,26 @@
-       fi
-     fi
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ "x$new_ntp_servers" != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/linux dhcp-4.0.0/client/scripts/linux
---- dhcp-4.0.0.ORIG/client/scripts/linux	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/linux	2008-09-01 11:39:30.000000000 +0100
-@@ -55,6 +55,26 @@
- 
-     mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ "x$new_ntp_servers" != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/netbsd dhcp-4.0.0/client/scripts/netbsd
---- dhcp-4.0.0.ORIG/client/scripts/netbsd	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/netbsd	2008-09-01 11:39:30.000000000 +0100
-@@ -29,6 +29,26 @@
- 
-     mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ "x$new_ntp_servers" != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/openbsd dhcp-4.0.0/client/scripts/openbsd
---- dhcp-4.0.0.ORIG/client/scripts/openbsd	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/openbsd	2008-09-01 11:39:30.000000000 +0100
-@@ -29,6 +29,26 @@
- 
-     mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ "x$new_ntp_servers" != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.
-diff -uNr dhcp-4.0.0.ORIG/client/scripts/solaris dhcp-4.0.0/client/scripts/solaris
---- dhcp-4.0.0.ORIG/client/scripts/solaris	2008-09-01 11:38:51.000000000 +0100
-+++ dhcp-4.0.0/client/scripts/solaris	2008-09-01 11:39:30.000000000 +0100
-@@ -17,6 +17,26 @@
- 
-     mv /etc/resolv.conf.dhclient /etc/resolv.conf
-   fi
-+  # If we're making confs, may as well make an ntp.conf too
-+  make_ntp_conf
-+}
-+
-+make_ntp_conf() {
-+  if [ x$PEER_NTP = x ] || [ x$PEER_NTP = xyes ]; then
-+    if [ "x$new_ntp_servers" != x ]; then
-+      conf="# Generated by dhclient for interface $interface\n"
-+      conf="${conf}restrict default noquery notrust nomodify\n"
-+      conf="${conf}restrict 127.0.0.1\n"
-+      for ntpserver in $new_ntp_servers; do
-+        conf="${conf}restrict $ntpserver nomodify notrap noquery\n"
-+        conf="${conf}server $ntpserver\n"
-+      done
-+      conf="${conf}driftfile /var/lib/ntp/ntp.drift\n"
-+      conf="${conf}logfile /var/log/ntp.log\n"
-+      printf "${conf}" > /etc/ntp.conf
-+      chmod 644 /etc/ntp.conf
-+    fi
-+  fi
- }
- 
- # Must be used on exit.   Invokes the local dhcp client exit hooks, if any.

diff --git a/net-misc/dhcp/files/dhcp-4.2.0-errwarn-message.patch b/net-misc/dhcp/files/dhcp-4.2.0-errwarn-message.patch
deleted file mode 100644
index f882a13..00000000
--- a/net-misc/dhcp/files/dhcp-4.2.0-errwarn-message.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-ripped from Fedora & tweaked 
-
---- dhcp-4.2.0/omapip/errwarn.c
-+++ dhcp-4.2.0/omapip/errwarn.c
-@@ -76,20 +76,13 @@
- 
- #if !defined (NOMINUM)
-   log_error ("%s", "");
--  log_error ("If you did not get this software from ftp.isc.org, please");
--  log_error ("get the latest from ftp.isc.org and install that before");
--  log_error ("requesting help.");
-+  log_error ("This version of ISC DHCP is based on the release available");
-+  log_error ("on ftp.isc.org.  Features have been added and other changes");
-+  log_error ("have been made to the base software release in order to make");
-+  log_error ("it work better with this distribution.");
-   log_error ("%s", "");
--  log_error ("If you did get this software from ftp.isc.org and have not");
--  log_error ("yet read the README, please read it before requesting help.");
--  log_error ("If you intend to request help from the dhcp-server@isc.org");
--  log_error ("mailing list, please read the section on the README about");
--  log_error ("submitting bug reports and requests for help.");
--  log_error ("%s", "");
--  log_error ("Please do not under any circumstances send requests for");
--  log_error ("help directly to the authors of this software - please");
--  log_error ("send them to the appropriate mailing list as described in");
--  log_error ("the README file.");
-+  log_error ("Please report for this software via the Gentoo Bugzilla site:");
-+  log_error ("    http://bugs.gentoo.org/");
-   log_error ("%s", "");
-   log_error ("exiting.");
- #endif

diff --git a/net-misc/dhcp/files/dhcp-4.2.2-dhclient-resolvconf.patch b/net-misc/dhcp/files/dhcp-4.2.2-dhclient-resolvconf.patch
deleted file mode 100644
index 28080a8..00000000
--- a/net-misc/dhcp/files/dhcp-4.2.2-dhclient-resolvconf.patch
+++ /dev/null
@@ -1,409 +0,0 @@
---- a/client/scripts/bsdos
-+++ b/client/scripts/bsdos
-@@ -1,40 +1,46 @@
- #!/bin/sh
- 
- make_resolv_conf() {
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-   if [ x"$new_domain_name_servers" != x ]; then
--    cat /dev/null > /etc/resolv.conf.dhclient
-     if [ "x$new_domain_search" != x ]; then
--      echo search $new_domain_search >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_search}\n"
-     elif [ "x$new_domain_name" != x ]; then
-       # Note that the DHCP 'Domain Name Option' is really just a domain
-       # name, and that this practice of using the domain name option as
-       # a search path is both nonstandard and deprecated.
--      echo search $new_domain_name >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-     for nameserver in $new_domain_name_servers; do
--      echo nameserver $nameserver >> /etc/resolv.conf.dhclient
-+      conf="${conf}nameserver ${nameserver}\n"
-     done
--
--    mv /etc/resolv.conf.dhclient /etc/resolv.conf
-   elif [ "x${new_dhcp6_name_servers}" != x ] ; then
--    cat /dev/null > /etc/resolv.conf.dhclient6
--    chmod 644 /etc/resolv.conf.dhclient6
--
-     if [ "x${new_dhcp6_domain_search}" != x ] ; then
--      echo search ${new_dhcp6_domain_search} >> /etc/resolv.conf.dhclient6
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-     fi
-     for nameserver in ${new_dhcp6_name_servers} ; do
-       # If the nameserver has a link-local address
-       # add a <zone_id> (interface name) to it.
-       case $nameserver in
- 	  fe80:*) zone_id="%$interface";;
- 	  FE80:*) zone_id="%$interface";;
- 	  *)      zone_id='';;
-       esac
--      echo nameserver ${nameserver}$zone_id >> /etc/resolv.conf.dhclient6
-+      conf="${conf}nameserver ${nameserver}$zone_id\n"
-     done
-+  fi
- 
--    mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-+    fi
-   fi
- }
- 
---- a/client/scripts/freebsd
-+++ b/client/scripts/freebsd
-@@ -11,73 +11,45 @@
- fi
- 
- make_resolv_conf() {
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-   if [ x"$new_domain_name_servers" != x ]; then
--    ( cat /dev/null > /etc/resolv.conf.dhclient )
--    exit_status=$?
--    if [ $exit_status -ne 0 ]; then
--      $LOGGER "Unable to create /etc/resolv.conf.dhclient: Error $exit_status"
--    else
--      if [ "x$new_domain_search" != x ]; then
--	( echo search $new_domain_search >> /etc/resolv.conf.dhclient )
--	exit_status=$?
--      elif [ "x$new_domain_name" != x ]; then
--	# Note that the DHCP 'Domain Name Option' is really just a domain
--	# name, and that this practice of using the domain name option as
--	# a search path is both nonstandard and deprecated.
--	( echo search $new_domain_name >> /etc/resolv.conf.dhclient )
--	exit_status=$?
--      fi
--      for nameserver in $new_domain_name_servers; do
--	if [ $exit_status -ne 0 ]; then
--	  break
--	fi
--	( echo nameserver $nameserver >>/etc/resolv.conf.dhclient )
--	exit_status=$?
--      done
--
--      # If there were no errors, attempt to mv the new file into place.
--      if [ $exit_status -eq 0 ]; then
--	( mv /etc/resolv.conf.dhclient /etc/resolv.conf )
--	exit_status=$?
--      fi
--
--      if [ $exit_status -ne 0 ]; then
--	$LOGGER "Error while writing new /etc/resolv.conf."
--      fi
-+    if [ "x$new_domain_search" != x ]; then
-+      conf="${conf}search ${new_domain_search}\n"
-+    elif [ "x$new_domain_name" != x ]; then
-+      # Note that the DHCP 'Domain Name Option' is really just a domain
-+      # name, and that this practice of using the domain name option as
-+      # a search path is both nonstandard and deprecated.
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-+    for nameserver in $new_domain_name_servers; do
-+      conf="${conf}nameserver ${nameserver}\n"
-+    done
-   elif [ "x${new_dhcp6_name_servers}" != x ] ; then
--    ( cat /dev/null > /etc/resolv.conf.dhclient6 )
--    exit_status=$?
--    if [ $exit_status -ne 0 ] ; then
--      $LOGGER "Unable to create /etc/resolv.conf.dhclient6: Error $exit_status"
--    else
--      if [ "x${new_dhcp6_domain_search}" != x ] ; then
--	( echo search ${new_dhcp6_domain_search} >> /etc/resolv.conf.dhclient6 )
--	exit_status=$?
--      fi
--      for nameserver in ${new_dhcp6_name_servers} ; do
--	if [ $exit_status -ne 0 ] ; then
--	  break
--	fi
- 	# If the nameserver has a link-local address
- 	# add a <zone_id> (interface name) to it.
- 	case $nameserver in
- 	    fe80:*) zone_id="%$interface";;
- 	    FE80:*) zone_id="%$interface";;
- 	    *)      zone_id='';;
- 	esac
--	( echo nameserver ${nameserver}$zone_id >> /etc/resolv.conf.dhclient6 )
--	exit_status=$?
--      done
--
--      if [ $exit_status -eq 0 ] ; then
--        ( mv /etc/resolv.conf.dhclient6 /etc/resolv.conf )
--	exit_status=$?
--      fi
-+    if [ "x${new_dhcp6_domain_search}" != x ] ; then
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-+    fi
-+    for nameserver in ${new_dhcp6_name_servers} ; do
-+      conf="${conf}nameserver ${nameserver}$zone_id\n"
-+    done
-+  fi
- 
--      if [ $exit_status -ne 0 ] ; then
--	$LOGGER "Error while writing new /etc/resolv.conf."
--      fi
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-     fi
-   fi
- }
---- a/client/scripts/linux
-+++ b/client/scripts/linux
-@@ -26,44 +26,49 @@
- ip=/sbin/ip
- 
- make_resolv_conf() {
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-   if [ x"$new_domain_name_servers" != x ]; then
--    cat /dev/null > /etc/resolv.conf.dhclient
--    chmod 644 /etc/resolv.conf.dhclient
--    if [ x"$new_domain_search" != x ]; then
--      echo search $new_domain_search >> /etc/resolv.conf.dhclient
--    elif [ x"$new_domain_name" != x ]; then
-+    if [ "x$new_domain_search" != x ]; then
-+      conf="${conf}search ${new_domain_search}\n"
-+    elif [ "x$new_domain_name" != x ]; then
-       # Note that the DHCP 'Domain Name Option' is really just a domain
-       # name, and that this practice of using the domain name option as
-       # a search path is both nonstandard and deprecated.
--      echo search $new_domain_name >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-     for nameserver in $new_domain_name_servers; do
--      echo nameserver $nameserver >>/etc/resolv.conf.dhclient
-+      conf="${conf}nameserver ${nameserver}\n"
-     done
--
--    mv /etc/resolv.conf.dhclient /etc/resolv.conf
-   elif [ "x${new_dhcp6_name_servers}" != x ] ; then
--    cat /dev/null > /etc/resolv.conf.dhclient6
--    chmod 644 /etc/resolv.conf.dhclient6
--
-     if [ "x${new_dhcp6_domain_search}" != x ] ; then
--      echo search ${new_dhcp6_domain_search} >> /etc/resolv.conf.dhclient6
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-     fi
-     shopt -s nocasematch 
-     for nameserver in ${new_dhcp6_name_servers} ; do
-       # If the nameserver has a link-local address
-       # add a <zone_id> (interface name) to it.
-       if  [[ "$nameserver" =~ ^fe80:: ]]
-       then
- 	zone_id="%$interface"
-       else
- 	zone_id=
-       fi
--      echo nameserver ${nameserver}$zone_id >> /etc/resolv.conf.dhclient6
-+      conf="${conf}nameserver ${nameserver}$zone_id\n"
-     done
-     shopt -u nocasematch 
-+  fi
- 
--    mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-+    fi
-   fi
- }
- 
---- a/client/scripts/netbsd
-+++ b/client/scripts/netbsd
-@@ -1,40 +1,46 @@
- #!/bin/sh
- 
- make_resolv_conf() {
--  if [ "x$new_domain_name" != x ] && [ x"$new_domain_name_servers" != x ]; then
--    cat /dev/null > /etc/resolv.conf.dhclient
--    if [ "x$new_domain_search" != x ]; then
--      echo search $new_domain_search >> /etc/resolv.conf.dhclient
--    elif [ "x$new_domain_name" != x ]; then
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-+  if [ x"$new_domain_name_servers" != x ]; then
-+    if [ "x$new_domain_search" != x ]; then
-+      conf="${conf}search ${new_domain_search}\n"
-+    elif [ "x$new_domain_name" != x ]; then
-       # Note that the DHCP 'Domain Name Option' is really just a domain
-       # name, and that this practice of using the domain name option as
-       # a search path is both nonstandard and deprecated.
--      echo search $new_domain_name >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-     for nameserver in $new_domain_name_servers; do
--      echo nameserver $nameserver >>/etc/resolv.conf.dhclient
-+      conf="${conf}nameserver ${nameserver}\n"
-     done
--
--    mv /etc/resolv.conf.dhclient /etc/resolv.conf
-   elif [ "x${new_dhcp6_name_servers}" != x ] ; then
--    cat /dev/null > /etc/resolv.conf.dhclient6
--    chmod 644 /etc/resolv.conf.dhclient6
--
-     if [ "x${new_dhcp6_domain_search}" != x ] ; then
--      echo search ${new_dhcp6_domain_search} >> /etc/resolv.conf.dhclient6
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-     fi
-     for nameserver in ${new_dhcp6_name_servers} ; do
-       # If the nameserver has a link-local address
-       # add a <zone_id> (interface name) to it.
-       case $nameserver in
- 	fe80:*) zone_id="%$interface";;
- 	FE80:*) zone_id="%$interface";;
- 	*)      zone_id='';;
-       esac
--      echo nameserver ${nameserver}$zone_id >> /etc/resolv.conf.dhclient6
-+      conf="${conf}nameserver ${nameserver}$zone_id\n"
-     done
-+  fi
- 
--    mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-+    fi
-   fi
- }
- 
---- a/client/scripts/openbsd
-+++ b/client/scripts/openbsd
-@@ -1,40 +1,46 @@
- #!/bin/sh
- 
- make_resolv_conf() {
--  if [ x"$new_domain_name_servers" != x ]; then
--    cat /dev/null > /etc/resolv.conf.dhclient
--    if [ x"$new_domain_search" != x ]; then
--      echo search $new_domain_search >> /etc/resolv.conf.dhclient
--    elif [ x"$new_domain_name" != x ]; then
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-+  if [ x"$new_domain_name_servers" != x ]; then
-+    if [ "x$new_domain_search" != x ]; then
-+      conf="${conf}search ${new_domain_search}\n"
-+    elif [ "x$new_domain_name" != x ]; then
-       # Note that the DHCP 'Domain Name Option' is really just a domain
-       # name, and that this practice of using the domain name option as
-       # a search path is both nonstandard and deprecated.
--      echo search $new_domain_name >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-     for nameserver in $new_domain_name_servers; do
--      echo nameserver $nameserver >>/etc/resolv.conf.dhclient
-+      conf="${conf}nameserver ${nameserver}\n"
-     done
--
--    mv /etc/resolv.conf.dhclient /etc/resolv.conf
-   elif [ "x${new_dhcp6_name_servers}" != x ] ; then
--    cat /dev/null > /etc/resolv.conf.dhclient6
--    chmod 644 /etc/resolv.conf.dhclient6
--
-     if [ "x${new_dhcp6_domain_search}" != x ] ; then
--      echo search ${new_dhcp6_domain_search} >> /etc/resolv.conf.dhclient6
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-     fi
-     for nameserver in ${new_dhcp6_name_servers} ; do
-       # If the nameserver has a link-local address
-       # add a <zone_id> (interface name) to it.
-       case $nameserver in
- 	fe80:*) zone_id="%$interface";;
- 	FE80:*) zone_id="%$interface";;
- 	*)      zone_id='';;
-       esac
--      echo nameserver ${nameserver}$zone_id >> /etc/resolv.conf.dhclient6
-+      conf="${conf}nameserver ${nameserver}$zone_id\n"
-     done
-+  fi
- 
--    mv /etc/resolv.conf.dhclient6 /etc/resolv.conf
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-+    fi
-   fi
- }
- 
---- a/client/scripts/solaris
-+++ b/client/scripts/solaris
-@@ -1,21 +1,39 @@
- #!/bin/sh  
- 
- make_resolv_conf() {
-+  if [ x"$PEER_DNS" != x ] && [ x"$PEER_DNS" != xyes ]; then
-+    return 0
-+  fi
-+  local conf=
-   if [ x"$new_domain_name_servers" != x ]; then
--    cat /dev/null > /etc/resolv.conf.dhclient
--    if [ x"$new_domain_search" != x ]; then
--      echo search $new_domain_search >> /etc/resolv.conf.dhclient
--    elif [ x"$new_domain_name" != x ]; then
-+    if [ "x$new_domain_search" != x ]; then
-+      conf="${conf}search ${new_domain_search}\n"
-+    elif [ "x$new_domain_name" != x ]; then
-       # Note that the DHCP 'Domain Name Option' is really just a domain
-       # name, and that this practice of using the domain name option as
-       # a search path is both nonstandard and deprecated.
--      echo search $new_domain_name >> /etc/resolv.conf.dhclient
-+      conf="${conf}search ${new_domain_name}\n"
-     fi
-     for nameserver in $new_domain_name_servers; do
--      echo nameserver $nameserver >>/etc/resolv.conf.dhclient
-+      conf="${conf}nameserver ${nameserver}\n"
-+    done
-+  elif [ "x${new_dhcp6_name_servers}" != x ] ; then
-+    if [ "x${new_dhcp6_domain_search}" != x ] ; then
-+      conf="${conf}search ${new_dhcp6_domain_search}\n"
-+    fi
-+    for nameserver in ${new_dhcp6_name_servers} ; do
-+      conf="${conf}nameserver ${nameserver}\n"
-     done
-+  fi
- 
--    mv /etc/resolv.conf.dhclient /etc/resolv.conf
-+  if [ x"$conf" != x ]; then
-+    conf="# Generated by dhclient or interface $interface\n${conf}"
-+    if type resolvconf >/dev/null 2>&1; then
-+      printf "${conf}" | resolvconf -a $interface
-+    else
-+      printf "${conf}" > /etc/resolv.conf
-+      chmod 644 /etc/resolv.conf
-+    fi
-   fi
- }
- 

diff --git a/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch
deleted file mode 100644
index 1064bbf..00000000
--- a/net-misc/dhcp/files/dhcp-4.3.3-bind-disable.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- dhcp-4.3.3/bind/Makefile.in
-+++ dhcp-4.3.3/bind/Makefile.in
-@@ -40,6 +40,7 @@
- @BIND_ATF_TRUE@all: bind1 atf bind2
- 
- bind1:
-+disable:
- # Extract the source from the tarball, if it hasn't been already.
- 	@if test -d ${bindsrcdir} ; then                    \
- 		echo ${bindsrcdir} already unpacked... ;    \
-@@ -68,6 +69,7 @@
- 	fi
- 
- atf:
-+disable:
- # Build and copy the ATF support if not yet installed.
- 	@if test -d ./atf ; then				      \
- 		echo ATF support already installed ;		      \
-@@ -79,6 +81,7 @@
- 	fi
- 
- bind2:
-+disable:
- # Build and install the export libraries
- # No need to do anything if we already have something installed.
- 	@if test -d ${binddir}/lib ; then                                    \
---- dhcp-4.3.3/bind/test
-+++ dhcp-4.3.3/bind/test
-@@ -0,0 +1 @@
-+--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2018-02-02 11:20 Lars Wendler
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Wendler @ 2018-02-02 11:20 UTC (permalink / raw
  To: gentoo-commits

commit:     fd2fce14c2b61e2baac6feff9be545c4940f09f4
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  2 11:19:23 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Feb  2 11:19:23 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd2fce14

net-misc/dhcp: Bump to version 4.4.0

Package-Manager: Portage-2.3.23, Repoman-2.3.6

 net-misc/dhcp/Manifest                             |   1 +
 net-misc/dhcp/dhcp-4.4.0.ebuild                    | 264 +++++++++++++++++++++
 .../dhcp/files/dhcp-4.4.0-always-accept-4.patch    |  29 +++
 net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch  |  22 ++
 4 files changed, 316 insertions(+)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index 7f8bf667d55..a0c93eb7fa5 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1,3 +1,4 @@
 DIST dhcp-4.3.4.tar.gz 9302513 BLAKE2B eb7fb7d7d46d5a706b4f22b4add98619709f7ac1ecf8244564f043fd56adb6e2f54a0e01b573abcd7e054a82f74279c8134802380ee2d02c1cab1118d48a4965 SHA512 411c3f0e1effedb2a95f00539d13164530a56b50830008eb78906b3c8bf4070c331cf54a431770aed5d1b6ba214840446964210060674f746781cc97842ad706
 DIST dhcp-4.3.5.tar.gz 10075147 BLAKE2B ffce896cfafe17a412030d0a1cb4a92323be175ecbb35061fe0538ed13a9f91d604daed89b5f282c92ef161944e9f18557545d95c9fbbd29e1f6a31485ef3b11 SHA512 aba0e1d361eb9e7ed33fc48c0b0b9288057af9ec51775e40e27feb9ababc182506706fcf39079236ce36b0f7ded391e107474dc29de2e60ed45d37753505e1f0
 DIST dhcp-4.3.6.tar.gz 10182593 BLAKE2B 2b6324c63446a5cbded9a7cdd4455b6c880aabd282dfd19d44fe2fafe684a991b4afa87ec04ee3fc131437c8efdddbe2777d70586c2e8b2b4319e786325dc398 SHA512 de4962dc2aa174df17a3a1456719a777a42d238c3d6ad1771ccc460fa70c9e9cefcce52c7437f7acde61b9c3a2e84e9d49fd2dc33c7e9243053ceed5b247be03
+DIST dhcp-4.4.0.tar.gz 11158069 BLAKE2B c554e15f549bdf6342bfa4337ab54f2a259a1c212700a69b56d795b1c91230759e254b050087ad09cf065d9dcc380e6110a95d63c3d2ba982c567dd381889d3e SHA512 0dcddfe803db0cea49204f71c9fbc3b1a55496acc83e344d9147893410bbb5f96874ff6457037ee9f759d701cea4bab98dc51ad5d7b23926254e25e5e421eabd

diff --git a/net-misc/dhcp/dhcp-4.4.0.ebuild b/net-misc/dhcp/dhcp-4.4.0.ebuild
new file mode 100644
index 00000000000..ff83c6a59ab
--- /dev/null
+++ b/net-misc/dhcp/dhcp-4.4.0.ebuild
@@ -0,0 +1,264 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit systemd toolchain-funcs user
+
+MY_PV="${PV//_alpha/a}"
+MY_PV="${MY_PV//_beta/b}"
+MY_PV="${MY_PV//_rc/rc}"
+MY_PV="${MY_PV//_p/-P}"
+MY_P="${PN}-${MY_PV}"
+DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
+HOMEPAGE="http://www.isc.org/products/DHCP"
+SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
+	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
+
+LICENSE="ISC BSD SSLeay GPL-2" # GPL-2 only for init script
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="+client ipv6 kernel_linux ldap libressl selinux +server ssl vim-syntax"
+
+DEPEND="
+	client? (
+		kernel_linux? (
+			ipv6? ( sys-apps/iproute2 )
+			sys-apps/net-tools
+		)
+	)
+	ldap? (
+		net-nds/openldap
+		ssl? (
+			!libressl? ( dev-libs/openssl:0 )
+			libressl? ( dev-libs/libressl )
+		)
+	)"
+RDEPEND="${DEPEND}
+	selinux? ( sec-policy/selinux-dhcp )
+	vim-syntax? ( app-vim/dhcpd-syntax )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+	unpack ${A}
+	# handle local bind hell
+	cd "${S}"/bind
+	unpack ./bind.tar.gz
+}
+
+PATCHES=(
+	# Gentoo patches - these will probably never be accepted upstream
+	# Fix some permission issues
+	"${FILESDIR}/${PN}-3.0-fix-perms.patch"
+
+	# Enable dhclient to equery NTP servers
+	"${FILESDIR}/${PN}-4.3.6-dhclient-ntp.patch"
+	"${FILESDIR}/${PN}-4.3.6-dhclient-resolvconf.patch"
+
+	# Enable dhclient to get extra configuration from stdin
+	"${FILESDIR}/${PN}-4.2.2-dhclient-stdin-conf.patch"
+	"${FILESDIR}/${PN}-4.3.6-nogateway.patch" #265531
+	"${FILESDIR}/${PN}-4.3.6-quieter-ping.patch" #296921
+	"${FILESDIR}/${PN}-4.4.0-always-accept-4.patch" #437108
+	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch" #480636
+	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch" #471142
+	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch" #559832
+)
+
+src_prepare() {
+	default
+
+	# Brand the version with Gentoo
+	sed -i \
+		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
+		configure || die
+
+	# Change the hook script locations of the scripts
+	sed -i \
+		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
+		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
+		client/scripts/* || die
+
+	# No need for the linux script to force bash #158540
+	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
+
+	# Quiet the freebsd logger a little
+	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
+
+	# Remove these options from the sample config
+	sed -i -r \
+		-e "/(script|host-name|domain-name) /d" \
+		client/dhclient.conf.example || die
+
+	if use client && ! use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
+			Makefile.in || die
+	elif ! use client && use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<client\>::' \
+			Makefile.in || die
+	fi
+
+	# Only install different man pages if we don't have en
+	if [[ " ${LINGUAS} " != *" en "* ]]; then
+		# Install Japanese man pages
+		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
+			einfo "Installing Japanese documention"
+			cp doc/ja_JP.eucJP/dhclient* client || die
+			cp doc/ja_JP.eucJP/dhcp* common || die
+		fi
+	fi
+	# Now remove the non-english docs so there are no errors later
+	rm -r doc/ja_JP.eucJP || die
+
+	# make the bind build work
+	binddir="${S}/bind"
+	cd "${binddir}" || die
+	cat <<-EOF > bindvar.tmp
+	binddir=${binddir}
+	GMAKE=${MAKE:-gmake}
+	EOF
+	eapply -p2 "${FILESDIR}"/${PN}-4.4.0-bind-disable.patch
+	# Only use the relevant subdirs now that ISC
+	#removed the lib/export structure in bind.
+	sed '/^SUBDIRS/s@=.*$@= isc dns isccfg irs samples@' \
+		-i bind-*/lib/Makefile.in || die
+}
+
+src_configure() {
+	# bind defaults to stupid `/usr/bin/ar`
+	tc-export AR BUILD_CC
+	export ac_cv_path_AR=${AR}
+
+	# this is tested for by the bind build system, and can cause trouble
+	# when cross-building; since dhcp itself doesn't make use of libcap,
+	# simply disable it.
+	export ac_cv_lib_cap_cap_set_proc=no
+
+	# Use FHS sane paths ... some of these have configure options,
+	# but not all, so just do it all here.
+	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
+	cat <<-EOF >> includes/site.h
+	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
+	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
+	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
+	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
+	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
+	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
+	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
+	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
+	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
+	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
+	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
+	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
+	EOF
+
+	local myeconfargs=(
+		--enable-paranoia
+		--enable-early-chroot
+		--sysconfdir=${e}
+		$(use_enable ipv6 dhcpv6)
+		$(use_with ldap)
+		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
+	)
+	econf "${myeconfargs[@]}"
+
+	# configure local bind cruft.  symtable option requires
+	# perl and we don't want to require that #383837.
+	cd bind/bind-*/ || die
+	eval econf \
+		$(for el in $(awk '/^bindconfig/,/^$/ {print}' ../Makefile.in) ; do if [[ ${el} =~ ^-- ]] ; then printf ' %s' ${el}; fi; done | sed 's,@\([[:alpha:]]\+\)dir@,${binddir}/\1,g') \
+		--disable-symtable \
+		--without-make-clean
+}
+
+src_compile() {
+	# build local bind cruft first
+	emake -C bind/bind-*/lib install
+	# then build standard dhcp code
+	emake AR="$(tc-getAR)"
+}
+
+src_install() {
+	default
+
+	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
+	docinto html
+	dodoc doc/References.html
+
+	if [[ -e client/dhclient ]] ; then
+		# move the client to /
+		dodir /sbin
+		mv "${D}"/usr/sbin/dhclient "${D}"/sbin/ || die
+
+		exeinto /sbin
+		if use kernel_linux ; then
+			newexe "${S}"/client/scripts/linux dhclient-script
+		else
+			newexe "${S}"/client/scripts/freebsd dhclient-script
+		fi
+	fi
+
+	if [[ -e server/dhcpd ]] ; then
+		if use ldap ; then
+			insinto /etc/openldap/schema
+			doins contrib/ldap/dhcp.*
+			dosbin contrib/ldap/dhcpd-conf-to-ldap
+		fi
+
+		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
+		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
+		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
+		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
+
+		systemd_newtmpfilesd "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
+		systemd_dounit "${FILESDIR}"/dhcpd4.service
+		systemd_dounit "${FILESDIR}"/dhcpd6.service
+		systemd_dounit "${FILESDIR}"/dhcrelay4.service
+		systemd_dounit "${FILESDIR}"/dhcrelay6.service
+		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
+		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
+
+		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
+	fi
+
+	# the default config files aren't terribly useful #384087
+	local f
+	for f in "${ED}"/etc/dhcp/*.conf.example ; do
+		mv "${f}" "${f%.example}" || die
+	done
+	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
+}
+
+pkg_preinst() {
+	enewgroup dhcp
+	enewuser dhcp -1 -1 /var/lib/dhcp dhcp
+
+	# Keep the user files over the sample ones.  The
+	# hashing is to ignore the crappy defaults #384087.
+	local f h
+	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
+		h=${f#*:}
+		f="/etc/dhcp/${f%:*}.conf"
+		if [ -e "${EROOT}"${f} ] ; then
+			case $(md5sum "${EROOT}"${f}) in
+				${h}*) ;;
+				*) cp -p "${EROOT}"${f} "${ED}"${f};;
+			esac
+		fi
+	done
+}
+
+pkg_postinst() {
+	if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then
+		ewarn
+		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
+		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
+		ewarn "and dhcp should be removed from the default runlevel"
+		ewarn
+	fi
+}

diff --git a/net-misc/dhcp/files/dhcp-4.4.0-always-accept-4.patch b/net-misc/dhcp/files/dhcp-4.4.0-always-accept-4.patch
new file mode 100644
index 00000000000..bbb25eb194b
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.4.0-always-accept-4.patch
@@ -0,0 +1,29 @@
+https://bugs.gentoo.org/437108
+
+Always accept the -4 option even if we don't have IPv6 support enabled.
+The relay code does this already.
+
+--- dhcp-4.4.0/client/dhclient.c
++++ dhcp-4.4.0/client/dhclient.c
+@@ -353,8 +353,8 @@
+ 		if (!strcmp(argv[i], "-r")) {
+ 			release_mode = 1;
+ 			/* no_daemon = 1; */
+-#ifdef DHCPv6
+ 		} else if (!strcmp(argv[i], "-4")) {
++#ifdef DHCPv6
+ 			if (local_family_set && local_family != AF_INET)
+ 				log_fatal("Client can only do v4 or v6, not "
+ 					  "both.");
+--- dhcp-4.4.0/server/dhcpd.c
++++ dhcp-4.4.0/server/dhcpd.c
+@@ -495,8 +495,8 @@
+ 		} else if (!strcmp (argv [i], "-q")) {
+ 			quiet = 1;
+ 			quiet_interface_discovery = 1;
+-#ifdef DHCPv6
+ 		} else if (!strcmp(argv[i], "-4")) {
++#ifdef DHCPv6
+ 			if (local_family_set && (local_family != AF_INET)) {
+ 				log_fatal("Server cannot run in both IPv4 and "
+ 					  "IPv6 mode at the same time.");

diff --git a/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch
new file mode 100644
index 00000000000..b74255ca4e9
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch
@@ -0,0 +1,22 @@
+--- dhcp-4.4.0/bind/Makefile.in
++++ dhcp-4.4.0/bind/Makefile.in
+@@ -37,6 +37,7 @@
+ @BIND_ATF_TRUE@all: bind1 atf bind2
+ 
+ bind1:
++disable:
+ # Extract the source from the tarball, if it hasn't been already.
+ 	@if test -d ${bindsrcdir} ; then                  \
+ 		echo ${bindsrcdir} already unpacked... ;  \
+@@ -60,6 +61,7 @@
+ 	fi
+ 
+ atf:
++disable:
+ # Build and copy the ATF support if not yet installed.
+ 	@if test -d ./atf ; then                      \
+ 		echo ATF support already installed ;  \
+--- dhcp-4.4.0/bind/test
++++ dhcp-4.4.0/bind/test
+@@ -0,0 +1 @@
++--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --includedir=${binddir}/include --libdir=${binddir}/lib


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2019-07-31 22:03 Lars Wendler
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Wendler @ 2019-07-31 22:03 UTC (permalink / raw
  To: gentoo-commits

commit:     be2f1e5f86171478cf4a9e24b2a414716cfa71fd
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 31 22:00:35 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul 31 22:03:51 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be2f1e5f

net-misc/dhcp: Removed old.

Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-misc/dhcp/Manifest                             |   1 -
 net-misc/dhcp/dhcp-4.3.6_p1.ebuild                 | 263 ---------------------
 .../files/dhcp-4.2.2-bind-parallel-build.patch     |  14 --
 .../dhcp/files/dhcp-4.2.4-always-accept-4.patch    |  29 ---
 net-misc/dhcp/files/dhcp-4.3.4-bind-disable.patch  |  38 ---
 5 files changed, 345 deletions(-)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index 4197edbff03..4a8471be145 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1,2 +1 @@
-DIST dhcp-4.3.6-P1.tar.gz 10189202 BLAKE2B 5dfbda82fa76d1011c552c9d9b5f15296834c2f380795e11fc6419010dd533fa45b9544fc10fc9da45095127f54ffe136b5fd7cc584589150b1b0a9a054e800c SHA512 cb04af2fb0fa8c5621e8b3dcb41e81422475218e1569b0eac6e13c876a21279928a3348f799253d7207517720466523b1cc28005c671542e37b1a391342b1e62
 DIST dhcp-4.4.1.tar.gz 11164378 BLAKE2B fd3c65d8802c42cb936ff75ee19784e4f533c9b36aa08a61280aa8acae5cf581c67cd70222b46eb24b1f9a571e1c028cc853952feac4b6a12f9b7d7d3dbc2fc9 SHA512 684ae349f224918c9f8cec7bd6c55cd0b83ad2b5827375b2876ca088eb05b7ff1364e50f6dc24f2485c610d9be94d4ba3020f60a0fa0ef63962349d191b887e7

diff --git a/net-misc/dhcp/dhcp-4.3.6_p1.ebuild b/net-misc/dhcp/dhcp-4.3.6_p1.ebuild
deleted file mode 100644
index 934d0e56fbb..00000000000
--- a/net-misc/dhcp/dhcp-4.3.6_p1.ebuild
+++ /dev/null
@@ -1,263 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit systemd toolchain-funcs user
-
-MY_PV="${PV//_alpha/a}"
-MY_PV="${MY_PV//_beta/b}"
-MY_PV="${MY_PV//_rc/rc}"
-MY_PV="${MY_PV//_p/-P}"
-MY_P="${PN}-${MY_PV}"
-DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
-HOMEPAGE="http://www.isc.org/products/DHCP"
-SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
-	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
-
-LICENSE="ISC BSD SSLeay GPL-2" # GPL-2 only for init script
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-IUSE="+client ipv6 kernel_linux ldap libressl selinux +server ssl vim-syntax"
-
-DEPEND="
-	client? (
-		kernel_linux? (
-			ipv6? ( sys-apps/iproute2 )
-			sys-apps/net-tools
-		)
-	)
-	ldap? (
-		net-nds/openldap
-		ssl? (
-			!libressl? ( dev-libs/openssl:0= )
-			libressl? ( dev-libs/libressl )
-		)
-	)"
-RDEPEND="${DEPEND}
-	selinux? ( sec-policy/selinux-dhcp )
-	vim-syntax? ( app-vim/dhcpd-syntax )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_unpack() {
-	unpack ${A}
-	# handle local bind hell
-	cd "${S}"/bind
-	unpack ./bind.tar.gz
-}
-
-PATCHES=(
-	# Gentoo patches - these will probably never be accepted upstream
-	# Fix some permission issues
-	"${FILESDIR}/${PN}-3.0-fix-perms.patch"
-
-	# Enable dhclient to equery NTP servers
-	"${FILESDIR}/${PN}-4.3.6-dhclient-ntp.patch"
-	"${FILESDIR}/${PN}-4.3.6-dhclient-resolvconf.patch"
-
-	# Enable dhclient to get extra configuration from stdin
-	"${FILESDIR}/${PN}-4.2.2-dhclient-stdin-conf.patch"
-	"${FILESDIR}/${PN}-4.3.6-nogateway.patch" #265531
-	"${FILESDIR}/${PN}-4.3.6-quieter-ping.patch" #296921
-	"${FILESDIR}/${PN}-4.2.4-always-accept-4.patch" #437108
-	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch" #480636
-	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch" #471142
-	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch" #559832
-	"${FILESDIR}/${PN}-4.3.6-lmdb-removal.patch" #628598
-)
-
-src_prepare() {
-	default
-
-	# Brand the version with Gentoo
-	sed -i \
-		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
-		configure || die
-
-	# Change the hook script locations of the scripts
-	sed -i \
-		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
-		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
-		client/scripts/* || die
-
-	# No need for the linux script to force bash #158540
-	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
-
-	# Quiet the freebsd logger a little
-	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
-
-	# Remove these options from the sample config
-	sed -i -r \
-		-e "/(script|host-name|domain-name) /d" \
-		client/dhclient.conf.example || die
-
-	if use client && ! use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
-			Makefile.in || die
-	elif ! use client && use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<client\>::' \
-			Makefile.in || die
-	fi
-
-	# Only install different man pages if we don't have en
-	if [[ " ${LINGUAS} " != *" en "* ]]; then
-		# Install Japanese man pages
-		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
-			einfo "Installing Japanese documention"
-			cp doc/ja_JP.eucJP/dhclient* client || die
-			cp doc/ja_JP.eucJP/dhcp* common || die
-		fi
-	fi
-	# Now remove the non-english docs so there are no errors later
-	rm -r doc/ja_JP.eucJP || die
-
-	# make the bind build work
-	binddir="${S}/bind"
-	cd "${binddir}" || die
-	cat <<-EOF > bindvar.tmp
-	binddir=${binddir}
-	GMAKE=${MAKE:-gmake}
-	EOF
-	eapply -p2 "${FILESDIR}"/${PN}-4.3.4-bind-disable.patch
-	cd bind-*/ || die
-	eapply -p2 "${FILESDIR}"/${PN}-4.2.2-bind-parallel-build.patch #380717
-}
-
-src_configure() {
-	# bind defaults to stupid `/usr/bin/ar`
-	tc-export AR BUILD_CC
-	export ac_cv_path_AR=${AR}
-
-	# this is tested for by the bind build system, and can cause trouble
-	# when cross-building; since dhcp itself doesn't make use of libcap,
-	# simply disable it.
-	export ac_cv_lib_cap_cap_set_proc=no
-
-	# Use FHS sane paths ... some of these have configure options,
-	# but not all, so just do it all here.
-	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
-	cat <<-EOF >> includes/site.h
-	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
-	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
-	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
-	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
-	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
-	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
-	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
-	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
-	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
-	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
-	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
-	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
-	EOF
-
-	local myeconfargs=(
-		--enable-paranoia
-		--enable-early-chroot
-		--sysconfdir=${e}
-		$(use_enable ipv6 dhcpv6)
-		$(use_with ldap)
-		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
-	)
-	econf "${myeconfargs[@]}"
-
-	# configure local bind cruft.  symtable option requires
-	# perl and we don't want to require that #383837.
-	cd bind/bind-*/ || die
-	eval econf \
-		$(sed -n '/^bindconfig =/,/^$/{:a;N;$!ba;s,^[^-]*,,;s,\\\s*\n\s*--,--,g;s, @[[:upper:]]\+@,,g;P;D}' ../Makefile.in) \
-		--disable-symtable \
-		--without-make-clean
-}
-
-src_compile() {
-	# build local bind cruft first
-	emake -C bind/bind-*/lib/export install
-	# then build standard dhcp code
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-
-	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
-	docinto html
-	dodoc doc/References.html
-
-	if [[ -e client/dhclient ]] ; then
-		# move the client to /
-		dodir /sbin
-		mv "${D}"/usr/sbin/dhclient "${D}"/sbin/ || die
-
-		exeinto /sbin
-		if use kernel_linux ; then
-			newexe "${S}"/client/scripts/linux dhclient-script
-		else
-			newexe "${S}"/client/scripts/freebsd dhclient-script
-		fi
-	fi
-
-	if [[ -e server/dhcpd ]] ; then
-		if use ldap ; then
-			insinto /etc/openldap/schema
-			doins contrib/ldap/dhcp.*
-			dosbin contrib/ldap/dhcpd-conf-to-ldap
-		fi
-
-		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
-		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
-		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
-		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
-
-		systemd_newtmpfilesd "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
-		systemd_dounit "${FILESDIR}"/dhcpd4.service
-		systemd_dounit "${FILESDIR}"/dhcpd6.service
-		systemd_dounit "${FILESDIR}"/dhcrelay4.service
-		systemd_dounit "${FILESDIR}"/dhcrelay6.service
-		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
-		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
-
-		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
-	fi
-
-	# the default config files aren't terribly useful #384087
-	local f
-	for f in "${ED}"/etc/dhcp/*.conf.example ; do
-		mv "${f}" "${f%.example}" || die
-	done
-	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
-}
-
-pkg_preinst() {
-	enewgroup dhcp
-	enewuser dhcp -1 -1 /var/lib/dhcp dhcp
-
-	# Keep the user files over the sample ones.  The
-	# hashing is to ignore the crappy defaults #384087.
-	local f h
-	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
-		h=${f#*:}
-		f="/etc/dhcp/${f%:*}.conf"
-		if [ -e "${EROOT}"${f} ] ; then
-			case $(md5sum "${EROOT}"${f}) in
-				${h}*) ;;
-				*) cp -p "${EROOT}"${f} "${ED}"${f};;
-			esac
-		fi
-	done
-}
-
-pkg_postinst() {
-	if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then
-		ewarn
-		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
-		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
-		ewarn "and dhcp should be removed from the default runlevel"
-		ewarn
-	fi
-}

diff --git a/net-misc/dhcp/files/dhcp-4.2.2-bind-parallel-build.patch b/net-misc/dhcp/files/dhcp-4.2.2-bind-parallel-build.patch
deleted file mode 100644
index 6136154f65a..00000000000
--- a/net-misc/dhcp/files/dhcp-4.2.2-bind-parallel-build.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-fix the bind subdir parallel builds
-
-https://bugs.gentoo.org/380717
-
---- a/bind/lib/export/isc/Makefile.in
-+++ b/bind/lib/export/isc/Makefile.in
-@@ -114,6 +114,7 @@
- 		-DLIBAGE=${LIBAGE} \
- 		-c ${srcdir}/version.c
- 
-+${OBJS}: | subdirs
- libisc.@SA@: ${OBJS}
- 	${AR} ${ARFLAGS} $@ ${OBJS}
- 	${RANLIB} $@

diff --git a/net-misc/dhcp/files/dhcp-4.2.4-always-accept-4.patch b/net-misc/dhcp/files/dhcp-4.2.4-always-accept-4.patch
deleted file mode 100644
index 6cec86c9d9c..00000000000
--- a/net-misc/dhcp/files/dhcp-4.2.4-always-accept-4.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-https://bugs.gentoo.org/437108
-
-always accept the -4 option even if we don't have IPv6 support enabled.
-the relay code does this already.
-
---- a/client/dhclient.c
-+++ b/client/dhclient.c
-@@ -170,8 +170,8 @@ main(int argc, char **argv) {
- 		if (!strcmp(argv[i], "-r")) {
- 			release_mode = 1;
- 			no_daemon = 1;
--#ifdef DHCPv6
- 		} else if (!strcmp(argv[i], "-4")) {
-+#ifdef DHCPv6
- 			if (local_family_set && local_family != AF_INET)
- 				log_fatal("Client can only do v4 or v6, not "
- 					  "both.");
---- a/server/dhcpd.c
-+++ b/server/dhcpd.c
-@@ -373,8 +373,8 @@ main(int argc, char **argv) {
- 		} else if (!strcmp (argv [i], "-q")) {
- 			quiet = 1;
- 			quiet_interface_discovery = 1;
--#ifdef DHCPv6
- 		} else if (!strcmp(argv[i], "-4")) {
-+#ifdef DHCPv6
- 			if (local_family_set && (local_family != AF_INET)) {
- 				log_fatal("Server cannot run in both IPv4 and "
- 					  "IPv6 mode at the same time.");

diff --git a/net-misc/dhcp/files/dhcp-4.3.4-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.3.4-bind-disable.patch
deleted file mode 100644
index be0c032ae76..00000000000
--- a/net-misc/dhcp/files/dhcp-4.3.4-bind-disable.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- dhcp-4.3.4/bind/Makefile.in
-+++ dhcp-4.3.4/bind/Makefile.in
-@@ -40,6 +40,7 @@
- @BIND_ATF_TRUE@all: bind1 atf bind2
- 
- bind1:
-+disable:
- # Extract the source from the tarball, if it hasn't been already.
- 	@if test -d ${bindsrcdir} ; then                    \
- 		echo ${bindsrcdir} already unpacked... ;    \
-@@ -68,6 +69,7 @@
- 	fi
- 
- atf:
-+disable:
- # Build and copy the ATF support if not yet installed.
- 	@if test -d ./atf ; then				      \
- 		echo ATF support already installed ;		      \
-@@ -82,6 +84,7 @@
- @CROSS_COMPILING_TRUE@bind2: bind2-hostgen
- 
- bind2-noguest:
-+disable:
- # Build and install the export libraries
- # No need to do anything if we already have something installed.
- 	@if test -d ${binddir}/lib ; then                                    \
-@@ -98,6 +101,7 @@
- 	fi
- 
- bind2-hostgen:
-+disable:
- # Build and install the export libraries
- # No need to do anything if we already have something installed.
- 	@if test -d ${binddir}/lib ; then                                    \
---- dhcp-4.3.4/bind/test
-+++ dhcp-4.3.4/bind/test
-@@ -0,0 +1 @@
-+--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2020-04-21  9:28 Lars Wendler
  0 siblings, 0 replies; 8+ messages in thread
From: Lars Wendler @ 2020-04-21  9:28 UTC (permalink / raw
  To: gentoo-commits

commit:     12b4d8f06024aba59d700e6b3c40ae5b46ed9d26
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 21 09:28:39 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Apr 21 09:28:48 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12b4d8f0

net-misc/dhcp: Fix build with gcc-10

Bug: https://bugs.gentoo.org/710194
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-misc/dhcp/dhcp-4.4.2-r2.ebuild              |  3 +++
 net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch | 34 +++++++++++++++++++++++++
 2 files changed, 37 insertions(+)

diff --git a/net-misc/dhcp/dhcp-4.4.2-r2.ebuild b/net-misc/dhcp/dhcp-4.4.2-r2.ebuild
index 650a485d9d6..8adf530720e 100644
--- a/net-misc/dhcp/dhcp-4.4.2-r2.ebuild
+++ b/net-misc/dhcp/dhcp-4.4.2-r2.ebuild
@@ -67,6 +67,9 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch" #480636
 	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch" #471142
 	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch" #559832
+
+	# Possible upstream candidates
+	"${FILESDIR}/${PN}-4.4.2-fno-common.patch" #710194
 )
 
 src_prepare() {

diff --git a/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch b/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch
new file mode 100644
index 00000000000..5d0b7bdd535
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch
@@ -0,0 +1,34 @@
+--- a/client/dhclient.c
++++ b/client/dhclient.c
+@@ -83,8 +83,6 @@
+ static const char url [] = "For info, please visit https://www.isc.org/software/dhcp/";
+ #endif /* UNIT_TEST */
+ 
+-u_int16_t local_port = 0;
+-u_int16_t remote_port = 0;
+ #if defined(DHCPv6) && defined(DHCP4o6)
+ int dhcp4o6_state = -1; /* -1 = stopped, 0 = polling, 1 = started */
+ #endif
+--- a/relay/dhcrelay.c
++++ b/relay/dhcrelay.c
+@@ -95,9 +95,6 @@
+        forward_untouched,	/* Forward without changes. */
+        discard } agent_relay_mode = forward_and_replace;
+ 
+-u_int16_t local_port;
+-u_int16_t remote_port;
+-
+ /* Relay agent server list. */
+ struct server_list {
+ 	struct server_list *next;
+--- a/server/mdb.c
++++ b/server/mdb.c
+@@ -67,8 +67,6 @@
+ 
+ int numclasseswritten;
+ 
+-omapi_object_type_t *dhcp_type_host;
+-
+ isc_result_t enter_class(cd, dynamicp, commit)
+ 	struct class *cd;
+ 	int dynamicp;


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2022-03-11 11:01 Sam James
  0 siblings, 0 replies; 8+ messages in thread
From: Sam James @ 2022-03-11 11:01 UTC (permalink / raw
  To: gentoo-commits

commit:     31e9ab09cdb5819d1f0d5aac010e7422d3c60277
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 11 09:34:00 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 11 11:00:57 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31e9ab09

net-misc/dhcp: add 4.4.3

Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-misc/dhcp/Manifest                            |   1 +
 net-misc/dhcp/dhcp-4.4.3.ebuild                   | 294 ++++++++++++++++++++++
 net-misc/dhcp/files/dhcp-4.4.3-bind-disable.patch |  27 ++
 3 files changed, 322 insertions(+)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index bc614fc3a8dd..93fbebb2127a 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1 +1,2 @@
 DIST dhcp-4.4.2-P1.tar.gz 9898311 BLAKE2B 7cc40dfbe578bee13c7dd7868a25d0d88358bf82b02539e933a4eba06039a43f0d99b3ef6ce811b60ed3a991b222844f4a5bd9e597c11d83b09ff551ba0380a6 SHA512 924e8b44f288361dbe837987869e57b929c73cb5e4af37cb2d7b19bca5ea8594048fb41c0792fede003188185f61b25befbc2ccda42f1f68e6b6bc22ef44b040
+DIST dhcp-4.4.3.tar.gz 10078953 BLAKE2B d88570760cc00bd72d1e9c2e76c7a7b9f07cadfbe044220a43ee33fc201c217725c3909a386ae11f28346920dacb0313d78193a9e3d7eac9757384b4fe762597 SHA512 4472d6794af80b482560956cee6895889cc1aca39980f851faf56824627e95731f2983cf7c7454bc3decb0a12c874fcbd29bd6c5a9695412def6bc14c6df17e0

diff --git a/net-misc/dhcp/dhcp-4.4.3.ebuild b/net-misc/dhcp/dhcp-4.4.3.ebuild
new file mode 100644
index 000000000000..585884b4fc84
--- /dev/null
+++ b/net-misc/dhcp/dhcp-4.4.3.ebuild
@@ -0,0 +1,294 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd toolchain-funcs flag-o-matic tmpfiles
+
+MY_PV="${PV//_alpha/a}"
+MY_PV="${MY_PV//_beta/b}"
+MY_PV="${MY_PV//_rc/rc}"
+MY_PV="${MY_PV//_p/-P}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
+HOMEPAGE="https://www.isc.org/dhcp"
+SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
+	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
+
+LICENSE="MPL-2.0 BSD SSLeay GPL-2" # GPL-2 only for init script
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+client ipv6 ldap selinux +server ssl vim-syntax"
+
+DEPEND="
+	acct-group/dhcp
+	acct-user/dhcp
+	client? (
+		kernel_linux? (
+			ipv6? ( sys-apps/iproute2 )
+			sys-apps/net-tools
+		)
+	)
+	ldap? (
+		net-nds/openldap
+		ssl? ( dev-libs/openssl:0= )
+	)"
+RDEPEND="${DEPEND}
+	selinux? ( sec-policy/selinux-dhcp )
+	vim-syntax? ( app-vim/dhcpd-syntax )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+	unpack ${A}
+	# handle local bind hell
+	cd "${S}"/bind
+	unpack ./bind.tar.gz
+}
+
+PATCHES=(
+	# Gentoo patches - these will probably never be accepted upstream
+	# Fix some permission issues
+	"${FILESDIR}/${PN}-3.0-fix-perms.patch"
+
+	# Enable dhclient to equery NTP servers
+	"${FILESDIR}/${PN}-4.3.6-dhclient-ntp.patch"
+	"${FILESDIR}/${PN}-4.3.6-dhclient-resolvconf.patch"
+
+	# Enable dhclient to get extra configuration from stdin
+	"${FILESDIR}/${PN}-4.2.2-dhclient-stdin-conf.patch"
+	# bug #265531
+	"${FILESDIR}/${PN}-4.3.6-nogateway.patch"
+	# bug #296921
+	"${FILESDIR}/${PN}-4.3.6-quieter-ping.patch"
+	# bug #437108
+	"${FILESDIR}/${PN}-4.4.0-always-accept-4.patch"
+	# bug #480636
+	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch"
+	# bug #471142
+	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch"
+	# bug #559832
+	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch"
+
+	# Possible upstream candidates
+)
+
+src_prepare() {
+	default
+
+	# Brand the version with Gentoo
+	sed -i \
+		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
+		configure || die
+
+	# Change the hook script locations of the scripts
+	sed -i \
+		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
+		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
+		client/scripts/* || die
+
+	# No need for the linux script to force bash #158540
+	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
+
+	# Quiet the freebsd logger a little
+	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
+
+	# Remove these options from the sample config
+	sed -i -r \
+		-e "/(script|host-name|domain-name) /d" \
+		client/dhclient.conf.example || die
+
+	if use client && ! use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
+			Makefile.in || die
+	elif ! use client && use server ; then
+		sed -i -r \
+			-e '/^SUBDIRS/s:\<client\>::' \
+			Makefile.in || die
+	fi
+
+	# Only install different man pages if we don't have en
+	if [[ " ${LINGUAS} " != *" en "* ]]; then
+		# Install Japanese man pages
+		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
+			einfo "Installing Japanese documention"
+			cp doc/ja_JP.eucJP/dhclient* client || die
+			cp doc/ja_JP.eucJP/dhcp* common || die
+		fi
+	fi
+	# Now remove the non-english docs so there are no errors later
+	rm -r doc/ja_JP.eucJP || die
+
+	# make the bind build work - do NOT make "binddir" local!
+	binddir="${S}/bind"
+	cd "${binddir}" || die
+	cat <<-EOF > bindvar.tmp
+	binddir=${binddir}
+	GMAKE=${MAKE:-gmake}
+	EOF
+	eapply -p2 "${FILESDIR}"/${PN}-4.4.3-bind-disable.patch
+	# Only use the relevant subdirs now that ISC
+	#removed the lib/export structure in bind.
+	sed '/^SUBDIRS/s@=.*$@= isc dns isccfg irs samples@' \
+		-i bind-*/lib/Makefile.in || die
+}
+
+src_configure() {
+	# bind defaults to stupid `/usr/bin/ar`
+	tc-export AR BUILD_CC
+	export ac_cv_path_AR=${AR}
+
+	# this is tested for by the bind build system, and can cause trouble
+	# when cross-building; since dhcp itself doesn't make use of libcap,
+	# simply disable it.
+	export ac_cv_lib_cap_cap_set_proc=no
+
+	# Use FHS sane paths ... some of these have configure options,
+	# but not all, so just do it all here.
+	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
+	cat <<-EOF >> includes/site.h
+	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
+	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
+	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
+	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
+	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
+	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
+	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
+	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
+	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
+	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
+	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
+	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
+	EOF
+
+	# Breaks with -O3 because of reliance on undefined behaviour
+	# bug #787935
+	append-flags -fno-strict-aliasing
+
+	# https://bugs.gentoo.org/720806
+	if use ppc || use arm || use hppa; then
+		append-libs -latomic
+	fi
+
+	local myeconfargs=(
+		--enable-paranoia
+		--enable-early-chroot
+		--sysconfdir=${e}
+		--with-randomdev=/dev/random
+		$(use_enable ipv6 dhcpv6)
+		$(use_with ldap)
+		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
+		LIBS="${LIBS}"
+	)
+	econf "${myeconfargs[@]}"
+
+	# configure local bind cruft.  symtable option requires
+	# perl and we don't want to require that. bug #383837.
+	cd bind/bind-*/ || die
+	local el
+	eval econf \
+		$(for el in $(awk '/^bindconfig/,/^$/ {print}' ../Makefile.in) ; do if [[ ${el} =~ ^-- ]] ; then printf ' %s' ${el//\\} ; fi ; done | sed 's,@\([[:alpha:]]\+\)dir@,${binddir}/\1,g') \
+		--with-randomdev=/dev/random \
+		--disable-symtable \
+		--without-make-clean
+}
+
+src_compile() {
+	# Build local bind cruft first
+	emake -C bind/bind-*/lib install
+	# then build standard dhcp code
+	emake AR="$(tc-getAR)"
+}
+
+src_install() {
+	default
+
+	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
+	docinto html
+	dodoc doc/References.html
+
+	if [[ -e client/dhclient ]] ; then
+		# Move the client to /
+		dodir /sbin
+		mv "${ED}"/usr/sbin/dhclient "${ED}"/sbin/ || die
+
+		exeinto /sbin
+		if use kernel_linux ; then
+			newexe "${S}"/client/scripts/linux dhclient-script
+		else
+			newexe "${S}"/client/scripts/freebsd dhclient-script
+		fi
+	fi
+
+	if [[ -e server/dhcpd ]] ; then
+		if use ldap ; then
+			insinto /etc/openldap/schema
+			doins contrib/ldap/dhcp.*
+			dosbin contrib/ldap/dhcpd-conf-to-ldap
+		fi
+
+		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
+		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
+		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
+		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
+		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
+
+		newtmpfiles "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
+		systemd_dounit "${FILESDIR}"/dhcpd4.service
+		systemd_dounit "${FILESDIR}"/dhcpd6.service
+		systemd_dounit "${FILESDIR}"/dhcrelay4.service
+		systemd_dounit "${FILESDIR}"/dhcrelay6.service
+		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
+		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
+
+		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
+	fi
+
+	# the default config files aren't terribly useful #384087
+	local f
+	for f in "${ED}"/etc/dhcp/*.conf.example ; do
+		mv "${f}" "${f%.example}" || die
+	done
+	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
+
+	diropts -m0750 -o dhcp -g dhcp
+	keepdir /var/lib/dhcp
+}
+
+pkg_preinst() {
+	# Keep the user files over the sample ones.  The
+	# hashing is to ignore the crappy defaults #384087.
+	local f h
+	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
+		h=${f#*:}
+		f="/etc/dhcp/${f%:*}.conf"
+		if [ -e "${EROOT}"${f} ] ; then
+			case $(md5sum "${EROOT}"${f}) in
+				${h}*) ;;
+				*) cp -p "${EROOT}"${f} "${ED}"${f};;
+			esac
+		fi
+	done
+}
+
+pkg_postinst() {
+	if use server ; then
+		tmpfiles_process dhcpd.conf
+	fi
+
+	if use client ; then
+		ewarn "The client and relay functionality will be removed in the next release!"
+		ewarn "Upstream have decided to discontinue this functionality."
+	fi
+
+	if [[ -e "${EROOT}"/etc/init.d/dhcp ]] ; then
+		ewarn
+		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
+		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
+		ewarn "and dhcp should be removed from the default runlevel"
+		ewarn
+	fi
+}

diff --git a/net-misc/dhcp/files/dhcp-4.4.3-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.4.3-bind-disable.patch
new file mode 100644
index 000000000000..7f99f771cd11
--- /dev/null
+++ b/net-misc/dhcp/files/dhcp-4.4.3-bind-disable.patch
@@ -0,0 +1,27 @@
+diff --git a/bind/Makefile.in b/bind/Makefile.in
+index 2e60091..a155194 100644
+--- a/bind/Makefile.in
++++ b/bind/Makefile.in
+@@ -37,6 +37,7 @@ installdirs = includedir=${binddir}/include libdir=${binddir}/lib
+ @BIND_ATF_TRUE@all: bind1 atf bind2
+ 
+ bind1:
++disable:
+ # Extract the source from the tarball, if it hasn't been already.
+ 	@if test -d ${bindsrcdir} ; then                  \
+ 		echo ${bindsrcdir} already unpacked... ;  \
+@@ -60,6 +61,7 @@ bind1:
+ 	fi
+ 
+ atf: bind1
++disable:
+ # Build and copy the ATF support if not yet installed.
+ 	@if test -d ./atf ; then                      \
+ 		echo ATF support already installed ;  \
+diff --git a/bind/test b/bind/test
+new file mode 100644
+index 0000000..713671f
+--- /dev/null
++++ b/bind/test
+@@ -0,0 +1 @@
+++--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --includedir=${binddir}/include --libdir=${binddir}/lib


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/
@ 2022-10-14 18:26 David Seifert
  0 siblings, 0 replies; 8+ messages in thread
From: David Seifert @ 2022-10-14 18:26 UTC (permalink / raw
  To: gentoo-commits

commit:     b6b6755d0c062900a0c55af126119728c402c02d
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 14 18:25:25 2022 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Oct 14 18:25:25 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6b6755d

net-misc/dhcp: drop 4.4.2_p1-r2, 4.4.3-r1

Bug: https://bugs.gentoo.org/875521
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 net-misc/dhcp/Manifest                             |   2 -
 net-misc/dhcp/dhcp-4.4.2_p1-r2.ebuild              | 285 --------------------
 net-misc/dhcp/dhcp-4.4.3-r1.ebuild                 | 294 ---------------------
 net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch  |  22 --
 net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch    |  34 ---
 net-misc/dhcp/files/dhcp-4.4.2-variable-name.patch |  25 --
 6 files changed, 662 deletions(-)

diff --git a/net-misc/dhcp/Manifest b/net-misc/dhcp/Manifest
index a6b776f66394..565f763ef590 100644
--- a/net-misc/dhcp/Manifest
+++ b/net-misc/dhcp/Manifest
@@ -1,3 +1 @@
-DIST dhcp-4.4.2-P1.tar.gz 9898311 BLAKE2B 7cc40dfbe578bee13c7dd7868a25d0d88358bf82b02539e933a4eba06039a43f0d99b3ef6ce811b60ed3a991b222844f4a5bd9e597c11d83b09ff551ba0380a6 SHA512 924e8b44f288361dbe837987869e57b929c73cb5e4af37cb2d7b19bca5ea8594048fb41c0792fede003188185f61b25befbc2ccda42f1f68e6b6bc22ef44b040
 DIST dhcp-4.4.3-P1.tar.gz 10081055 BLAKE2B 6cc16f7472efb1e1f6b7a83cafd9a81a16f10af7361da079c48a5eff0d9e310f475dcc82e984c20936c64867183402d00d26e5366e75bf7463ec2aea4a6f68a4 SHA512 d14dc44d1c015780ae19769816cb01015959927a1ad7a3e84b89e0463253aaf46451af88e3260347196373906d5b438c7c616fee45ec3f128aa82af6702b7154
-DIST dhcp-4.4.3.tar.gz 10078953 BLAKE2B d88570760cc00bd72d1e9c2e76c7a7b9f07cadfbe044220a43ee33fc201c217725c3909a386ae11f28346920dacb0313d78193a9e3d7eac9757384b4fe762597 SHA512 4472d6794af80b482560956cee6895889cc1aca39980f851faf56824627e95731f2983cf7c7454bc3decb0a12c874fcbd29bd6c5a9695412def6bc14c6df17e0

diff --git a/net-misc/dhcp/dhcp-4.4.2_p1-r2.ebuild b/net-misc/dhcp/dhcp-4.4.2_p1-r2.ebuild
deleted file mode 100644
index 6b2cf7158832..000000000000
--- a/net-misc/dhcp/dhcp-4.4.2_p1-r2.ebuild
+++ /dev/null
@@ -1,285 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs flag-o-matic tmpfiles
-
-MY_PV="${PV//_alpha/a}"
-MY_PV="${MY_PV//_beta/b}"
-MY_PV="${MY_PV//_rc/rc}"
-MY_PV="${MY_PV//_p/-P}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
-HOMEPAGE="https://www.isc.org/dhcp"
-SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
-	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
-
-LICENSE="MPL-2.0 BSD SSLeay GPL-2" # GPL-2 only for init script
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+client ipv6 ldap selinux +server ssl vim-syntax"
-
-DEPEND="
-	acct-group/dhcp
-	acct-user/dhcp
-	client? (
-		kernel_linux? (
-			ipv6? ( sys-apps/iproute2 )
-			sys-apps/net-tools
-		)
-	)
-	ldap? (
-		net-nds/openldap:=
-		ssl? ( dev-libs/openssl:= )
-	)"
-RDEPEND="${DEPEND}
-	selinux? ( sec-policy/selinux-dhcp )
-	vim-syntax? ( app-vim/dhcpd-syntax )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_unpack() {
-	unpack ${A}
-	# handle local bind hell
-	cd "${S}"/bind
-	unpack ./bind.tar.gz
-}
-
-PATCHES=(
-	# Gentoo patches - these will probably never be accepted upstream
-	# Fix some permission issues
-	"${FILESDIR}/${PN}-3.0-fix-perms.patch"
-
-	# Enable dhclient to equery NTP servers
-	"${FILESDIR}/${PN}-4.3.6-dhclient-ntp.patch"
-	"${FILESDIR}/${PN}-4.3.6-dhclient-resolvconf.patch"
-
-	# Enable dhclient to get extra configuration from stdin
-	"${FILESDIR}/${PN}-4.2.2-dhclient-stdin-conf.patch"
-	"${FILESDIR}/${PN}-4.3.6-nogateway.patch" #265531
-	"${FILESDIR}/${PN}-4.3.6-quieter-ping.patch" #296921
-	"${FILESDIR}/${PN}-4.4.0-always-accept-4.patch" #437108
-	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch" #480636
-	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch" #471142
-	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch" #559832
-
-	# Possible upstream candidates
-	"${FILESDIR}/${PN}-4.4.2-fno-common.patch" #710194
-	"${FILESDIR}/${PN}-4.4.2-variable-name.patch" #752402
-)
-
-src_prepare() {
-	default
-
-	# Brand the version with Gentoo
-	sed -i \
-		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
-		configure || die
-
-	# Change the hook script locations of the scripts
-	sed -i \
-		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
-		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
-		client/scripts/* || die
-
-	# No need for the linux script to force bash #158540
-	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
-
-	# Quiet the freebsd logger a little
-	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
-
-	# Remove these options from the sample config
-	sed -i -r \
-		-e "/(script|host-name|domain-name) /d" \
-		client/dhclient.conf.example || die
-
-	if use client && ! use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
-			Makefile.in || die
-	elif ! use client && use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<client\>::' \
-			Makefile.in || die
-	fi
-
-	# Only install different man pages if we don't have en
-	if [[ " ${LINGUAS} " != *" en "* ]]; then
-		# Install Japanese man pages
-		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
-			einfo "Installing Japanese documention"
-			cp doc/ja_JP.eucJP/dhclient* client || die
-			cp doc/ja_JP.eucJP/dhcp* common || die
-		fi
-	fi
-	# Now remove the non-english docs so there are no errors later
-	rm -r doc/ja_JP.eucJP || die
-
-	# make the bind build work - do NOT make "binddir" local!
-	binddir="${S}/bind"
-	cd "${binddir}" || die
-	cat <<-EOF > bindvar.tmp
-	binddir=${binddir}
-	GMAKE=${MAKE:-gmake}
-	EOF
-	eapply -p2 "${FILESDIR}"/${PN}-4.4.0-bind-disable.patch
-	# Only use the relevant subdirs now that ISC
-	#removed the lib/export structure in bind.
-	sed '/^SUBDIRS/s@=.*$@= isc dns isccfg irs samples@' \
-		-i bind-*/lib/Makefile.in || die
-}
-
-src_configure() {
-	# bind defaults to stupid `/usr/bin/ar`
-	tc-export AR BUILD_CC
-	export ac_cv_path_AR=${AR}
-
-	# this is tested for by the bind build system, and can cause trouble
-	# when cross-building; since dhcp itself doesn't make use of libcap,
-	# simply disable it.
-	export ac_cv_lib_cap_cap_set_proc=no
-
-	# Use FHS sane paths ... some of these have configure options,
-	# but not all, so just do it all here.
-	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
-	cat <<-EOF >> includes/site.h
-	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
-	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
-	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
-	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
-	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
-	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
-	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
-	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
-	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
-	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
-	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
-	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
-	EOF
-
-	# Breaks with -O3 because of reliance on undefined behaviour
-	# bug #787935
-	append-flags -fno-strict-aliasing
-
-	# bug #720806, bug #801592
-	if use ppc || use arm || use hppa || [[ ${CHOST} == i486* ]] ; then
-		append-libs -latomic
-	fi
-
-	local myeconfargs=(
-		--enable-paranoia
-		--enable-early-chroot
-		--sysconfdir=${e}
-		--with-randomdev=/dev/random
-		$(use_enable ipv6 dhcpv6)
-		$(use_with ldap)
-		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
-		LIBS="${LIBS}"
-	)
-	econf "${myeconfargs[@]}"
-
-	# configure local bind cruft.  symtable option requires
-	# perl and we don't want to require that #383837.
-	cd bind/bind-*/ || die
-	local el
-	eval econf \
-		$(for el in $(awk '/^bindconfig/,/^$/ {print}' ../Makefile.in) ; do if [[ ${el} =~ ^-- ]] ; then printf ' %s' ${el//\\} ; fi ; done | sed 's,@\([[:alpha:]]\+\)dir@,${binddir}/\1,g') \
-		--with-randomdev=/dev/random \
-		--disable-symtable \
-		--without-make-clean
-}
-
-src_compile() {
-	# build local bind cruft first
-	emake -C bind/bind-*/lib install
-	# then build standard dhcp code
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-
-	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
-	docinto html
-	dodoc doc/References.html
-
-	if [[ -e client/dhclient ]] ; then
-		# move the client to /
-		dodir /sbin
-		mv "${ED}"/usr/sbin/dhclient "${ED}"/sbin/ || die
-
-		exeinto /sbin
-		if use kernel_linux ; then
-			newexe "${S}"/client/scripts/linux dhclient-script
-		else
-			newexe "${S}"/client/scripts/freebsd dhclient-script
-		fi
-	fi
-
-	if [[ -e server/dhcpd ]] ; then
-		if use ldap ; then
-			insinto /etc/openldap/schema
-			doins contrib/ldap/dhcp.*
-			dosbin contrib/ldap/dhcpd-conf-to-ldap
-		fi
-
-		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
-		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
-		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
-		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
-
-		newtmpfiles "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
-		systemd_dounit "${FILESDIR}"/dhcpd4.service
-		systemd_dounit "${FILESDIR}"/dhcpd6.service
-		systemd_dounit "${FILESDIR}"/dhcrelay4.service
-		systemd_dounit "${FILESDIR}"/dhcrelay6.service
-		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
-		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
-
-		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
-	fi
-
-	# the default config files aren't terribly useful #384087
-	local f
-	for f in "${ED}"/etc/dhcp/*.conf.example ; do
-		mv "${f}" "${f%.example}" || die
-	done
-	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
-
-	diropts -m0750 -o dhcp -g dhcp
-	keepdir /var/lib/dhcp
-}
-
-pkg_preinst() {
-	# Keep the user files over the sample ones.  The
-	# hashing is to ignore the crappy defaults #384087.
-	local f h
-	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
-		h=${f#*:}
-		f="/etc/dhcp/${f%:*}.conf"
-		if [ -e "${EROOT}"${f} ] ; then
-			case $(md5sum "${EROOT}"${f}) in
-				${h}*) ;;
-				*) cp -p "${EROOT}"${f} "${ED}"${f};;
-			esac
-		fi
-	done
-}
-
-pkg_postinst() {
-	if use server ; then
-		tmpfiles_process dhcpd.conf
-	fi
-
-	if [[ -e "${ROOT}"/etc/init.d/dhcp ]] ; then
-		ewarn
-		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
-		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
-		ewarn "and dhcp should be removed from the default runlevel"
-		ewarn
-	fi
-}

diff --git a/net-misc/dhcp/dhcp-4.4.3-r1.ebuild b/net-misc/dhcp/dhcp-4.4.3-r1.ebuild
deleted file mode 100644
index 9db36ddb42da..000000000000
--- a/net-misc/dhcp/dhcp-4.4.3-r1.ebuild
+++ /dev/null
@@ -1,294 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd toolchain-funcs flag-o-matic tmpfiles
-
-MY_PV="${PV//_alpha/a}"
-MY_PV="${MY_PV//_beta/b}"
-MY_PV="${MY_PV//_rc/rc}"
-MY_PV="${MY_PV//_p/-P}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="ISC Dynamic Host Configuration Protocol (DHCP) client/server"
-HOMEPAGE="https://www.isc.org/dhcp"
-SRC_URI="ftp://ftp.isc.org/isc/dhcp/${MY_P}.tar.gz
-	ftp://ftp.isc.org/isc/dhcp/${MY_PV}/${MY_P}.tar.gz"
-
-LICENSE="MPL-2.0 BSD SSLeay GPL-2" # GPL-2 only for init script
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+client ipv6 ldap selinux +server ssl vim-syntax"
-
-DEPEND="
-	acct-group/dhcp
-	acct-user/dhcp
-	client? (
-		kernel_linux? (
-			ipv6? ( sys-apps/iproute2 )
-			sys-apps/net-tools
-		)
-	)
-	ldap? (
-		net-nds/openldap:=
-		ssl? ( dev-libs/openssl:= )
-	)"
-RDEPEND="${DEPEND}
-	selinux? ( sec-policy/selinux-dhcp )
-	vim-syntax? ( app-vim/dhcpd-syntax )"
-
-S="${WORKDIR}/${MY_P}"
-
-src_unpack() {
-	unpack ${A}
-	# handle local bind hell
-	cd "${S}"/bind
-	unpack ./bind.tar.gz
-}
-
-PATCHES=(
-	# Gentoo patches - these will probably never be accepted upstream
-	# Fix some permission issues
-	"${FILESDIR}/${PN}-3.0-fix-perms.patch"
-
-	# Enable dhclient to equery NTP servers
-	"${FILESDIR}/${PN}-4.3.6-dhclient-ntp.patch"
-	"${FILESDIR}/${PN}-4.3.6-dhclient-resolvconf.patch"
-
-	# Enable dhclient to get extra configuration from stdin
-	"${FILESDIR}/${PN}-4.2.2-dhclient-stdin-conf.patch"
-	# bug #265531
-	"${FILESDIR}/${PN}-4.3.6-nogateway.patch"
-	# bug #296921
-	"${FILESDIR}/${PN}-4.3.6-quieter-ping.patch"
-	# bug #437108
-	"${FILESDIR}/${PN}-4.4.0-always-accept-4.patch"
-	# bug #480636
-	"${FILESDIR}/${PN}-4.3.6-iproute2-path.patch"
-	# bug #471142
-	"${FILESDIR}/${PN}-4.2.5-bindtodevice-inet6.patch"
-	# bug #559832
-	"${FILESDIR}/${PN}-4.3.3-ldap-ipv6-client-id.patch"
-
-	# Possible upstream candidates
-)
-
-src_prepare() {
-	default
-
-	# Brand the version with Gentoo
-	sed -i \
-		-e "/VERSION=/s:'$: Gentoo-${PR}':" \
-		configure || die
-
-	# Change the hook script locations of the scripts
-	sed -i \
-		-e 's,/etc/dhclient-exit-hooks,/etc/dhcp/dhclient-exit-hooks,g' \
-		-e 's,/etc/dhclient-enter-hooks,/etc/dhcp/dhclient-enter-hooks,g' \
-		client/scripts/* || die
-
-	# No need for the linux script to force bash #158540
-	sed -i -e 's,#!/bin/bash,#!/bin/sh,' client/scripts/linux || die
-
-	# Quiet the freebsd logger a little
-	sed -i -e '/LOGGER=/ s/-s -p user.notice //g' client/scripts/freebsd || die
-
-	# Remove these options from the sample config
-	sed -i -r \
-		-e "/(script|host-name|domain-name) /d" \
-		client/dhclient.conf.example || die
-
-	if use client && ! use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<(dhcpctl|relay|server)\>::g' \
-			Makefile.in || die
-	elif ! use client && use server ; then
-		sed -i -r \
-			-e '/^SUBDIRS/s:\<client\>::' \
-			Makefile.in || die
-	fi
-
-	# Only install different man pages if we don't have en
-	if [[ " ${LINGUAS} " != *" en "* ]]; then
-		# Install Japanese man pages
-		if [[ " ${LINGUAS} " == *" ja "* && -d doc/ja_JP.eucJP ]]; then
-			einfo "Installing Japanese documention"
-			cp doc/ja_JP.eucJP/dhclient* client || die
-			cp doc/ja_JP.eucJP/dhcp* common || die
-		fi
-	fi
-	# Now remove the non-english docs so there are no errors later
-	rm -r doc/ja_JP.eucJP || die
-
-	# make the bind build work - do NOT make "binddir" local!
-	binddir="${S}/bind"
-	cd "${binddir}" || die
-	cat <<-EOF > bindvar.tmp
-	binddir=${binddir}
-	GMAKE=${MAKE:-gmake}
-	EOF
-	eapply -p2 "${FILESDIR}"/${PN}-4.4.3-bind-disable.patch
-	# Only use the relevant subdirs now that ISC
-	#removed the lib/export structure in bind.
-	sed '/^SUBDIRS/s@=.*$@= isc dns isccfg irs samples@' \
-		-i bind-*/lib/Makefile.in || die
-}
-
-src_configure() {
-	# bind defaults to stupid `/usr/bin/ar`
-	tc-export AR BUILD_CC
-	export ac_cv_path_AR=${AR}
-
-	# this is tested for by the bind build system, and can cause trouble
-	# when cross-building; since dhcp itself doesn't make use of libcap,
-	# simply disable it.
-	export ac_cv_lib_cap_cap_set_proc=no
-
-	# Use FHS sane paths ... some of these have configure options,
-	# but not all, so just do it all here.
-	local e="/etc/dhcp" r="/var/run/dhcp" l="/var/lib/dhcp"
-	cat <<-EOF >> includes/site.h
-	#define _PATH_DHCPD_CONF     "${e}/dhcpd.conf"
-	#define _PATH_DHCLIENT_CONF  "${e}/dhclient.conf"
-	#define _PATH_DHCPD_DB       "${l}/dhcpd.leases"
-	#define _PATH_DHCPD6_DB      "${l}/dhcpd6.leases"
-	#define _PATH_DHCLIENT_DB    "${l}/dhclient.leases"
-	#define _PATH_DHCLIENT6_DB   "${l}/dhclient6.leases"
-	#define _PATH_DHCPD_PID      "${r}/dhcpd.pid"
-	#define _PATH_DHCPD6_PID     "${r}/dhcpd6.pid"
-	#define _PATH_DHCLIENT_PID   "${r}/dhcpclient.pid"
-	#define _PATH_DHCLIENT6_PID  "${r}/dhcpclient6.pid"
-	#define _PATH_DHCRELAY_PID   "${r}/dhcrelay.pid"
-	#define _PATH_DHCRELAY6_PID  "${r}/dhcrelay6.pid"
-	EOF
-
-	# Breaks with -O3 because of reliance on undefined behaviour
-	# bug #787935
-	append-flags -fno-strict-aliasing
-
-	# bug #720806, bug #801592
-	if use ppc || use arm || use hppa || [[ ${CHOST} == i486* ]] ; then
-		append-libs -latomic
-	fi
-
-	local myeconfargs=(
-		--enable-paranoia
-		--enable-early-chroot
-		--sysconfdir=${e}
-		--with-randomdev=/dev/random
-		$(use_enable ipv6 dhcpv6)
-		$(use_with ldap)
-		$(use ldap && use_with ssl ldapcrypto || echo --without-ldapcrypto)
-		LIBS="${LIBS}"
-	)
-	econf "${myeconfargs[@]}"
-
-	# configure local bind cruft.  symtable option requires
-	# perl and we don't want to require that. bug #383837.
-	cd bind/bind-*/ || die
-	local el
-	eval econf \
-		$(for el in $(awk '/^bindconfig/,/^$/ {print}' ../Makefile.in) ; do if [[ ${el} =~ ^-- ]] ; then printf ' %s' ${el//\\} ; fi ; done | sed 's,@\([[:alpha:]]\+\)dir@,${binddir}/\1,g') \
-		--with-randomdev=/dev/random \
-		--disable-symtable \
-		--without-make-clean
-}
-
-src_compile() {
-	# Build local bind cruft first
-	emake -C bind/bind-*/lib install
-	# then build standard dhcp code
-	emake AR="$(tc-getAR)"
-}
-
-src_install() {
-	default
-
-	dodoc README RELNOTES doc/{api+protocol,IANA-arp-parameters}
-	docinto html
-	dodoc doc/References.html
-
-	if [[ -e client/dhclient ]] ; then
-		# Move the client to /
-		dodir /sbin
-		mv "${ED}"/usr/sbin/dhclient "${ED}"/sbin/ || die
-
-		exeinto /sbin
-		if use kernel_linux ; then
-			newexe "${S}"/client/scripts/linux dhclient-script
-		else
-			newexe "${S}"/client/scripts/freebsd dhclient-script
-		fi
-	fi
-
-	if [[ -e server/dhcpd ]] ; then
-		if use ldap ; then
-			insinto /etc/openldap/schema
-			doins contrib/ldap/dhcp.*
-			dosbin contrib/ldap/dhcpd-conf-to-ldap
-		fi
-
-		newinitd "${FILESDIR}"/dhcpd.init5 dhcpd
-		newconfd "${FILESDIR}"/dhcpd.conf2 dhcpd
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay
-		newconfd "${FILESDIR}"/dhcrelay.conf dhcrelay
-		newinitd "${FILESDIR}"/dhcrelay.init3 dhcrelay6
-		newconfd "${FILESDIR}"/dhcrelay6.conf dhcrelay6
-
-		newtmpfiles "${FILESDIR}"/dhcpd.tmpfiles dhcpd.conf
-		systemd_dounit "${FILESDIR}"/dhcpd4.service
-		systemd_dounit "${FILESDIR}"/dhcpd6.service
-		systemd_dounit "${FILESDIR}"/dhcrelay4.service
-		systemd_dounit "${FILESDIR}"/dhcrelay6.service
-		systemd_install_serviced "${FILESDIR}"/dhcrelay4.service.conf
-		systemd_install_serviced "${FILESDIR}"/dhcrelay6.service.conf
-
-		sed -i "s:#@slapd@:$(usex ldap slapd ''):" "${ED}"/etc/init.d/* || die #442560
-	fi
-
-	# the default config files aren't terribly useful #384087
-	local f
-	for f in "${ED}"/etc/dhcp/*.conf.example ; do
-		mv "${f}" "${f%.example}" || die
-	done
-	sed -i '/^[^#]/s:^:#:' "${ED}"/etc/dhcp/*.conf || die
-
-	diropts -m0750 -o dhcp -g dhcp
-	keepdir /var/lib/dhcp
-}
-
-pkg_preinst() {
-	# Keep the user files over the sample ones.  The
-	# hashing is to ignore the crappy defaults #384087.
-	local f h
-	for f in dhclient:da7c8496a96452190aecf9afceef4510 dhcpd:10979e7b71134bd7f04d2a60bd58f070 ; do
-		h=${f#*:}
-		f="/etc/dhcp/${f%:*}.conf"
-		if [ -e "${EROOT}"${f} ] ; then
-			case $(md5sum "${EROOT}"${f}) in
-				${h}*) ;;
-				*) cp -p "${EROOT}"${f} "${ED}"${f};;
-			esac
-		fi
-	done
-}
-
-pkg_postinst() {
-	if use server ; then
-		tmpfiles_process dhcpd.conf
-	fi
-
-	if use client ; then
-		ewarn "The client and relay functionality will be removed in the next release!"
-		ewarn "Upstream have decided to discontinue this functionality."
-	fi
-
-	if [[ -e "${EROOT}"/etc/init.d/dhcp ]] ; then
-		ewarn
-		ewarn "WARNING: The dhcp init script has been renamed to dhcpd"
-		ewarn "/etc/init.d/dhcp and /etc/conf.d/dhcp need to be removed and"
-		ewarn "and dhcp should be removed from the default runlevel"
-		ewarn
-	fi
-}

diff --git a/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch b/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch
deleted file mode 100644
index b74255ca4e97..000000000000
--- a/net-misc/dhcp/files/dhcp-4.4.0-bind-disable.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- dhcp-4.4.0/bind/Makefile.in
-+++ dhcp-4.4.0/bind/Makefile.in
-@@ -37,6 +37,7 @@
- @BIND_ATF_TRUE@all: bind1 atf bind2
- 
- bind1:
-+disable:
- # Extract the source from the tarball, if it hasn't been already.
- 	@if test -d ${bindsrcdir} ; then                  \
- 		echo ${bindsrcdir} already unpacked... ;  \
-@@ -60,6 +61,7 @@
- 	fi
- 
- atf:
-+disable:
- # Build and copy the ATF support if not yet installed.
- 	@if test -d ./atf ; then                      \
- 		echo ATF support already installed ;  \
---- dhcp-4.4.0/bind/test
-+++ dhcp-4.4.0/bind/test
-@@ -0,0 +1 @@
-+--disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --with-gssapi=no --enable-threads=no @BINDCONFIG@ --includedir=${binddir}/include --libdir=${binddir}/lib

diff --git a/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch b/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch
deleted file mode 100644
index 5d0b7bdd5352..000000000000
--- a/net-misc/dhcp/files/dhcp-4.4.2-fno-common.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/client/dhclient.c
-+++ b/client/dhclient.c
-@@ -83,8 +83,6 @@
- static const char url [] = "For info, please visit https://www.isc.org/software/dhcp/";
- #endif /* UNIT_TEST */
- 
--u_int16_t local_port = 0;
--u_int16_t remote_port = 0;
- #if defined(DHCPv6) && defined(DHCP4o6)
- int dhcp4o6_state = -1; /* -1 = stopped, 0 = polling, 1 = started */
- #endif
---- a/relay/dhcrelay.c
-+++ b/relay/dhcrelay.c
-@@ -95,9 +95,6 @@
-        forward_untouched,	/* Forward without changes. */
-        discard } agent_relay_mode = forward_and_replace;
- 
--u_int16_t local_port;
--u_int16_t remote_port;
--
- /* Relay agent server list. */
- struct server_list {
- 	struct server_list *next;
---- a/server/mdb.c
-+++ b/server/mdb.c
-@@ -67,8 +67,6 @@
- 
- int numclasseswritten;
- 
--omapi_object_type_t *dhcp_type_host;
--
- isc_result_t enter_class(cd, dynamicp, commit)
- 	struct class *cd;
- 	int dynamicp;

diff --git a/net-misc/dhcp/files/dhcp-4.4.2-variable-name.patch b/net-misc/dhcp/files/dhcp-4.4.2-variable-name.patch
deleted file mode 100644
index 9f5085dd5e23..000000000000
--- a/net-misc/dhcp/files/dhcp-4.4.2-variable-name.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 261c84d91d1b4581df9f7f0ec031908299de7726 Mon Sep 17 00:00:00 2001
-From: Mark Andrews <marka@isc.org>
-Date: Thu, 19 Dec 2019 09:27:44 +1100
-Subject: [PATCH] fix variable name in conditional block
-
----
- lib/isc/stats.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/isc/stats.c b/lib/isc/stats.c
-index 5bce3c1100..a7ab97ce53 100644
---- a/bind/bind-9.11.14/lib/isc/stats.c
-+++ b/bind/bind-9.11.14/lib/isc/stats.c
-@@ -297,7 +297,7 @@ setcounter(isc_stats_t *stats,
- 	isc_atomic_store((int32_t *)&stats->counters[counter].lo,
- 			 (uint32_t)(value & 0xffffffff));
- # else
--	stats->counters[counter] = val;
-+	stats->counters[counter] = value;
- # endif
- #endif
- }
--- 
-GitLab
-


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-10-14 18:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-11 11:01 [gentoo-commits] repo/gentoo:master commit in: net-misc/dhcp/, net-misc/dhcp/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2022-10-14 18:26 David Seifert
2020-04-21  9:28 Lars Wendler
2019-07-31 22:03 Lars Wendler
2018-02-02 11:20 Lars Wendler
2017-01-17 16:23 Lars Wendler
2015-09-16 15:50 Mike Frysinger
2015-09-06 15:37 Lars Wendler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox