This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 3.x development tree". The branch, master has been updated via d8feb2d7610f3c014fcef26e72ed6e449cd8d710 (commit) via 4b9ea0c0903e23431e11c5cd0e96658dd9f7d700 (commit) from c26b1be665de6063d581225b0d8ac675df2f77b8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit d8feb2d7610f3c014fcef26e72ed6e449cd8d710 Author: Stefan Schantl Date: Sun Apr 23 09:45:41 2017 +0200 dhcp: Update to 4.3.5b1 This is an update to the latest available version of the isc-dhcp. Also rework the patch handling. Signed-off-by: Stefan Schantl Signed-off-by: Michael Tremer commit 4b9ea0c0903e23431e11c5cd0e96658dd9f7d700 Author: Stefan Schantl Date: Sun Apr 23 09:41:59 2017 +0200 bind: Rework package and update to 9.9.9-P6 This commit rapidely slims down the bind package. It now only provides the libraries and development files, which are needed to build the isc-dhcp server and in a subpackage some very handy utils like dig, host and some more. Signed-off-by: Stefan Schantl Signed-off-by: Michael Tremer ----------------------------------------------------------------------- Summary of changes: bind/bind.nm | 144 ++-- bind/named.tmpfiles | 1 - bind/patches/bind-9.5-PIE.patch | 27 - bind/patches/bind-9.5-parallel-build.patch | 14 - bind/patches/bind-9.9-libidn.patch | 326 -------- ...-9.7-exportlib.patch => bind97-exportlib.patch} | 0 bind/patches/bind99-dont-build-bin.patch | 13 + dhcp/dhcp.nm | 81 +- dhcp/patches/0001-dhcp-remove-bind.patch | 261 +++++++ dhcp/patches/0002-dhcp-sharedlib.patch | 140 ++++ dhcp/patches/0003-dhcp-errwarn-message.patch | 64 ++ ...ions.patch => 0004-dhcp-dhclient-options.patch} | 254 +++---- ...-ifup.patch => 0005-dhcp-release-by-ifup.patch} | 10 +- ...ch => 0006-dhcp-dhclient-decline-backoff.patch} | 38 +- ...t-bootp.patch => 0007-dhcp-unicast-bootp.patch} | 30 +- ...h => 0008-dhcp-default-requested-options.patch} | 14 +- ...2.5-manpages.patch => 0009-dhcp-manpages.patch} | 61 +- ...hcp-4.2.4-paths.patch => 0010-dhcp-paths.patch} | 16 +- ...4.2.2-CLOEXEC.patch => 0011-dhcp-CLOEXEC.patch} | 178 +++-- dhcp/patches/0012-dhcp-garbage-chars.patch | 12 + dhcp/patches/0013-dhcp-add_timeout_when_NULL.patch | 14 + ...se.patch => 0014-dhcp-64_bit_lease_parse.patch} | 43 +- ...capability.patch => 0015-dhcp-capability.patch} | 100 +-- ...ndDecline.patch => 0016-dhcp-sendDecline.patch} | 26 +- ...017-dhcp-rfc3442-classless-static-routes.patch} | 110 +-- ...expired.patch => 0018-dhcp-honor-expired.patch} | 10 +- .../{dhcp-4.2.5-PPP.patch => 0019-dhcp-PPP.patch} | 116 +-- ...p-4.2.5-lpf-ib.patch => 0020-dhcp-lpf-ib.patch} | 247 ++++--- dhcp/patches/0021-dhcp-IPoIB-log-id.patch | 165 +++++ ...oved-xid.patch => 0022-dhcp-improved-xid.patch} | 74 +- dhcp/patches/0023-dhcp-duidv4.patch | 34 + dhcp/patches/0024-dhcp-duid_uuid.patch | 111 +++ ...getifaddrs.patch => 0025-dhcp-getifaddrs.patch} | 50 +- ...26-dhcp-client-request-release-bind-iface.patch | 61 ++ ...-P1-interval.patch => 0027-dhcp-interval.patch} | 8 +- dhcp/patches/0028-dhcp-no-subnet-error2info.patch | 48 ++ dhcp/patches/0029-dhcp-sd_notify.patch | 79 ++ .../patches/0030-dhcp-option97-pxe-client-id.patch | 217 ++++++ dhcp/patches/0031-dhcp-stateless-DUID-LLT.patch | 13 + dhcp/patches/0032-dhcp-dhclient-preinit6s.patch | 64 ++ .../patches/dhcp-4.2.0-add_timeout_when_NULL.patch | 14 - dhcp/patches/dhcp-4.2.0-errwarn-message.patch | 30 - dhcp/patches/dhcp-4.2.0-garbage-chars.patch | 12 - dhcp/patches/dhcp-4.2.0-logpid.patch | 12 - dhcp/patches/dhcp-4.2.1-retransmission.patch | 48 -- dhcp/patches/dhcp-4.2.2-gpxe-cid.patch | 83 --- dhcp/patches/dhcp-4.2.2-xen-checksum.patch | 249 ------- dhcp/patches/dhcp-4.2.3-P2-log_perror.patch | 11 - .../dhcp-4.2.3-dhclient-decline-onetry.patch | 27 - dhcp/patches/dhcp-4.2.4-P1-remove-dst.patch | 46 -- .../dhcp-4.2.4-P2-conflex-do-forward-updates.patch | 12 - dhcp/patches/dhcp-4.2.4-P2-dupl-key.patch | 13 - dhcp/patches/dhcp-4.2.4-UseMulticast.patch | 239 ------ dhcp/patches/dhcp-4.2.4-failOverPeer.patch | 12 - dhcp/patches/dhcp-4.2.4-send_release.patch | 23 - dhcp/patches/dhcp-4.2.5-next-server.patch | 72 -- dhcp/patches/dhcp-4.2.5-paranoia.patch | 202 ----- dhcp/patches/dhcp-4.2.5-range6.patch | 42 -- dhcp/patches/dhcp-4.2.5-remove-bind.patch | 164 ---- ...5-rfc5970-dhcpv6-options-for-network-boot.patch | 89 --- dhcp/patches/dhcp-4.2.5-sharedlib.patch | 120 --- dhcp/patches/dhcp-4.2.5-systemtap.patch | 822 --------------------- dhcp/patches/dhcp-4.2.5b1-atf-pkgconfig.patch | 23 - 63 files changed, 2086 insertions(+), 3553 deletions(-) delete mode 100644 bind/named.tmpfiles delete mode 100644 bind/patches/bind-9.5-PIE.patch delete mode 100644 bind/patches/bind-9.5-parallel-build.patch delete mode 100644 bind/patches/bind-9.9-libidn.patch rename bind/patches/{bind-9.7-exportlib.patch => bind97-exportlib.patch} (100%) create mode 100644 bind/patches/bind99-dont-build-bin.patch create mode 100644 dhcp/patches/0001-dhcp-remove-bind.patch create mode 100644 dhcp/patches/0002-dhcp-sharedlib.patch create mode 100644 dhcp/patches/0003-dhcp-errwarn-message.patch rename dhcp/patches/{dhcp-4.2.4-dhclient-options.patch => 0004-dhcp-dhclient-options.patch} (72%) rename dhcp/patches/{dhcp-4.2.0-release-by-ifup.patch => 0005-dhcp-release-by-ifup.patch} (88%) rename dhcp/patches/{dhcp-4.2.0-dhclient-decline-backoff.patch => 0006-dhcp-dhclient-decline-backoff.patch} (56%) rename dhcp/patches/{dhcp-4.2.4-unicast-bootp.patch => 0007-dhcp-unicast-bootp.patch} (72%) rename dhcp/patches/{dhcp-4.2.0-default-requested-options.patch => 0008-dhcp-default-requested-options.patch} (76%) rename dhcp/patches/{dhcp-4.2.5-manpages.patch => 0009-dhcp-manpages.patch} (70%) rename dhcp/patches/{dhcp-4.2.4-paths.patch => 0010-dhcp-paths.patch} (57%) rename dhcp/patches/{dhcp-4.2.2-CLOEXEC.patch => 0011-dhcp-CLOEXEC.patch} (63%) create mode 100644 dhcp/patches/0012-dhcp-garbage-chars.patch create mode 100644 dhcp/patches/0013-dhcp-add_timeout_when_NULL.patch rename dhcp/patches/{dhcp-4.2.4-64_bit_lease_parse.patch => 0014-dhcp-64_bit_lease_parse.patch} (51%) rename dhcp/patches/{dhcp-4.2.2-capability.patch => 0015-dhcp-capability.patch} (64%) rename dhcp/patches/{dhcp-4.2.5-sendDecline.patch => 0016-dhcp-sendDecline.patch} (88%) rename dhcp/patches/{dhcp-4.2.5-rfc3442-classless-static-routes.patch => 0017-dhcp-rfc3442-classless-static-routes.patch} (76%) rename dhcp/patches/{dhcp-4.2.0-honor-expired.patch => 0018-dhcp-honor-expired.patch} (77%) rename dhcp/patches/{dhcp-4.2.5-PPP.patch => 0019-dhcp-PPP.patch} (62%) rename dhcp/patches/{dhcp-4.2.5-lpf-ib.patch => 0020-dhcp-lpf-ib.patch} (70%) create mode 100644 dhcp/patches/0021-dhcp-IPoIB-log-id.patch rename dhcp/patches/{dhcp-4.2.4-improved-xid.patch => 0022-dhcp-improved-xid.patch} (71%) create mode 100644 dhcp/patches/0023-dhcp-duidv4.patch create mode 100644 dhcp/patches/0024-dhcp-duid_uuid.patch rename dhcp/patches/{dhcp-4.2.4-getifaddrs.patch => 0025-dhcp-getifaddrs.patch} (89%) create mode 100644 dhcp/patches/0026-dhcp-client-request-release-bind-iface.patch rename dhcp/patches/{dhcp-4.2.4-P1-interval.patch => 0027-dhcp-interval.patch} (72%) create mode 100644 dhcp/patches/0028-dhcp-no-subnet-error2info.patch create mode 100644 dhcp/patches/0029-dhcp-sd_notify.patch create mode 100644 dhcp/patches/0030-dhcp-option97-pxe-client-id.patch create mode 100644 dhcp/patches/0031-dhcp-stateless-DUID-LLT.patch create mode 100644 dhcp/patches/0032-dhcp-dhclient-preinit6s.patch delete mode 100644 dhcp/patches/dhcp-4.2.0-add_timeout_when_NULL.patch delete mode 100644 dhcp/patches/dhcp-4.2.0-errwarn-message.patch delete mode 100644 dhcp/patches/dhcp-4.2.0-garbage-chars.patch delete mode 100644 dhcp/patches/dhcp-4.2.0-logpid.patch delete mode 100644 dhcp/patches/dhcp-4.2.1-retransmission.patch delete mode 100644 dhcp/patches/dhcp-4.2.2-gpxe-cid.patch delete mode 100644 dhcp/patches/dhcp-4.2.2-xen-checksum.patch delete mode 100644 dhcp/patches/dhcp-4.2.3-P2-log_perror.patch delete mode 100644 dhcp/patches/dhcp-4.2.3-dhclient-decline-onetry.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-P1-remove-dst.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-P2-conflex-do-forward-updates.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-P2-dupl-key.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-UseMulticast.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-failOverPeer.patch delete mode 100644 dhcp/patches/dhcp-4.2.4-send_release.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-next-server.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-paranoia.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-range6.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-remove-bind.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-rfc5970-dhcpv6-options-for-network-boot.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-sharedlib.patch delete mode 100644 dhcp/patches/dhcp-4.2.5-systemtap.patch delete mode 100644 dhcp/patches/dhcp-4.2.5b1-atf-pkgconfig.patch Difference in files: diff --git a/bind/bind.nm b/bind/bind.nm index 7b6344f..6cb2597 100644 --- a/bind/bind.nm +++ b/bind/bind.nm @@ -4,8 +4,8 @@ ############################################################################### name = bind -version = 9.9.6-P1 -release = 2 +version = 9.9.9-P6 +release = 1 groups = Networking/Tools url = http://www.isc.org/products/BIND/ @@ -19,14 +19,10 @@ end source_dl = ftp://ftp.isc.org/isc/bind/%{version}/ -sources += \ - %{name}-config-12.tar.bz2 - build requires autoconf automake - chrpath libcap-devel libidn-devel libtool @@ -43,117 +39,93 @@ build --disable-static \ --disable-openssl-version-check \ --enable-exportlib \ - --with-export-libdir=/%{lib}/ \ - --with-export-includedir=/usr/include/ \ - --includedir=/usr/include/bind9/ \ - --with-pkcs11=%{libdir}/pkcs11/PKCS11_API.so \ + --with-export-libdir=%{libdir}/ \ + --with-export-includedir=%{includedir} \ + --includedir=%{includedir}/bind9/ \ --with-gssapi \ --enable-rrl \ --disable-isc-spnego - prepare - cd %{DIR_SRC} && %{MACRO_EXTRACT} %{DIR_DL}/%{thisapp}.tar.gz - + prepare_cmds # Create m4 directory. cd %{DIR_APP} && mkdir -pv m4 - # Apply all patches. - %{MACRO_PATCHES} - # Branding. sed -i -e 's/RELEASEVER=\(.*\)/RELEASEVER=\1-%{DISTRO_NAME}-%{version}-%{release}/' version # Regenerate build environment - libtoolize -c -f - aclocal -I m4 --force - autoconf -f + autoreconf -vfi - # Create user and group for /run directory. - %{create_user} end - install - # Create directory layout. - mkdir -pv %{BUILDROOT}%{libdir}/bind - mkdir -pv %{BUILDROOT}/var/named/{slaves,data,dynamic} - mkdir -pv %{BUILDROOT}/usr/share/man/{man1,man5,man8} - mkdir -pv %{BUILDROOT}/run/named - mkdir -pv %{BUILDROOT}/var/log + build_cmds + # Build some typical system tools (dig, host, nslookup) + make -C bin/dig -j %{PARALLELISMFLAGS} - # Create named chroot environment. - mkdir -pv %{BUILDROOT}/var/named/chroot/{dev,etc,var} - mkdir -pv %{BUILDROOT}/var/named/chroot/var/{log,named,run/named,tmp} - mkdir -pv %{BUILDROOT}/var/named/chroot/etc/{pki/dnssec-keys,named} - mkdir -pv %{BUILDROOT}/var/named/chroot/usr/lib/bind - mkdir -pv %{BUILDROOT}/var/named/chroot/dev/null - mkdir -pv %{BUILDROOT}/var/named/chroot/dev/random - mkdir -pv %{BUILDROOT}/var/named/chroot/dev/zero - mkdir -pv %{BUILDROOT}/var/named/chroot/etc/localtime - - touch %{BUILDROOT}/var/named/chroot/etc/named.conf + # Build nsupdate + make -C bin/nsupdate -j %{PARALLELISMFLAGS} + end - # Run make install - make DESTDIR=%{BUILDROOT} install + install_cmds + # Install typical system tools + make -C bin/dig install DESTDIR=%{BUILDROOT} - # Remove RPATH from libraries. - chrpath --delete %{BUILDROOT}/lib*/*export*.so.* + # Install nsupdate + make -C bin/nsupdate install DESTDIR=%{BUILDROOT} - # Remove unwanted files - rm -rvf %{BUILDROOT}/etc/bind.keys + # Install isc/errno2result.h header + install -m 644 lib/isc/unix/errno2result.h %{BUILDROOT}%{includedir}/isc - # Create ghost config files - touch %{BUILDROOT}/var/log/named.log + # Install trusted root key. + install -m 644 %{DIR_SOURCE}/trusted-key.key %{BUILDROOT}%{sysconfdir}/trusted-key.key - # Configuration files - tar -C %{BUILDROOT} -xaf %{DIR_DL}/bind-config-12.tar.bz2 - touch %{BUILDROOT}/etc/rndc.key - touch %{BUILDROOT}/etc/rndc.conf + # Remove development libraries and headers except *-export ones + rm -rvf %{BUILDROOT}%{libdir}/libbind9.so + rm -rvf %{BUILDROOT}%{libdir}/libdns.so + rm -rvf %{BUILDROOT}%{libdir}/libisccc.so + rm -rvf %{BUILDROOT}%{libdir}/libisccfg.so + rm -rvf %{BUILDROOT}%{libdir}/libisc.so + rm -rvf %{BUILDROOT}%{libdir}/liblwres.so + rm -rvf %{BUILDROOT}%{includedir}/bind9 - mkdir %{BUILDROOT}/etc/named - install -m 644 bind.keys %{BUILDROOT}/etc/named.iscdlv.key - install -m 644 %{DIR_SOURCE}/trusted-key.key %{BUILDROOT}/etc/trusted-key.key + # Remove unwanted files + rm -rvf %{BUILDROOT}/etc + rm -rvf %{BUILDROOT}/var - # Recreate symlinks for export libraries - rm -rf %{BUILDROOT}/%{lib}/lib*-export.so + # Remove unneeded tools + rm -rvf %{BUILDROOT}%{bindir}/isc-config.sh + rm -rvf %{BUILDROOT}%{bindir}/bind9-config - ln -svf ../../%{lib}/libdns-export.so.104 %{BUILDROOT}%{libdir}/libdns-export.so - ln -svf ../../%{lib}/libirs-export.so.91 %{BUILDROOT}%{libdir}/libirs-export.so - ln -svf ../../%{lib}/libisccfg-export.so.90 %{BUILDROOT}%{libdir}/libisccfg-export.so - ln -svf ../../%{lib}/libisc-export.so.95 %{BUILDROOT}%{libdir}/libisc-export.so + # Remove manpages for the unneeded tools + rm -rvf %{BUILDROOT}%{mandir}/man1/isc-config.sh.1 + rm -rvf %{BUILDROOT}%{mandir}/man1/bind9-config.1 - # Create /run/named. - mkdir -pv %{BUILDROOT}/run/named - chown -Rv named.named %{BUILDROOT}/run/named/ + # Remove documentation for liblwres and tools + rm -rvf %{BUILDROOT}%{mandir}/man3 end end -create_user - getent group named >/dev/null || /usr/sbin/groupadd -r named - getent passwd named >/dev/null || /usr/sbin/useradd -r -g named \ - -d /var/named -c "User for bind DNS server" -s /sbin/nologin named -end - packages package %{name} + # The bind package is just an umbrella package for the utils + # and libs package. requires - bind-utils - bind-chroot - end - - prerequires += shadow-utils - - script prein - %{create_user} + %{name}-libs = %{thisver} + %{name}-utils = %{thisver} + %{name}-utils-libs = %{thisver} end - - # XXX Add systemd scriptlet if a service file becomes available end package %{name}-utils summary = Utilities for querying bind DNS name server. description = %{summary} + requires + %{name}-utils-libs = %{thisver} + end + files + /etc/trusted-key.key /usr/bin/dig /usr/bin/host /usr/bin/nslookup @@ -165,17 +137,19 @@ packages end end - package %{name}-chroot - summary = Chroot environment for bind DNS servers. - description = %{summary} + package %{name}-utils-libs + template LIBS - files - /var/named/chroot - end + summary = Required libraries for the tools in the bind-utils package. + description = %{summary} end package %{name}-libs template LIBS + + files + %{libdir}/*export.so.* + end end package %{name}-devel diff --git a/bind/named.tmpfiles b/bind/named.tmpfiles deleted file mode 100644 index 640a656..0000000 --- a/bind/named.tmpfiles +++ /dev/null @@ -1 +0,0 @@ -d /run/named 0755 named named - diff --git a/bind/patches/bind-9.5-PIE.patch b/bind/patches/bind-9.5-PIE.patch deleted file mode 100644 index a525b9b..0000000 --- a/bind/patches/bind-9.5-PIE.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- bind-9.5.0b2/bin/named/Makefile.in.pie 2008-02-11 17:21:47.000000000 +0100 -+++ bind-9.5.0b2/bin/named/Makefile.in 2008-02-11 17:22:10.000000000 +0100 -@@ -100,8 +100,12 @@ HTMLPAGES = named.html lwresd.html named - - MANOBJS = ${MANPAGES} ${HTMLPAGES} - -+EXT_CFLAGS = -fpie -+ - @BIND9_MAKE_RULES@ - -+LDFLAGS += -pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack -+ - main.(a)O@: main.c - ${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} \ - -DVERSION=\"${VERSION}\" \ -diff -up bind-9.5.0b2/bin/named/unix/Makefile.in.pie bind-9.5.0b2/bin/named/unix/Makefile.in ---- bind-9.5.0b2/bin/named/unix/Makefile.in.pie 2008-02-11 17:22:21.000000000 +0100 -+++ bind-9.5.0b2/bin/named/unix/Makefile.in 2008-02-11 17:23:00.000000000 +0100 -@@ -19,6 +19,8 @@ srcdir = @srcdir@ - VPATH = @srcdir@ - top_srcdir = @top_srcdir@ - -+EXT_CFLAGS = -fpie -+ - @BIND9_MAKE_INCLUDES@ - - CINCLUDES = -I${srcdir}/include -I${srcdir}/../include \ diff --git a/bind/patches/bind-9.5-parallel-build.patch b/bind/patches/bind-9.5-parallel-build.patch deleted file mode 100644 index 53e34ca..0000000 --- a/bind/patches/bind-9.5-parallel-build.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up bind-9.5.0b1/lib/dns/Makefile.in.parallel bind-9.5.0b1/lib/dns/Makefile.in ---- bind-9.5.0b1/lib/dns/Makefile.in.parallel 2008-01-17 18:27:38.000000000 +0100 -+++ bind-9.5.0b1/lib/dns/Makefile.in 2008-01-17 18:27:45.000000000 +0100 -@@ -19,10 +19,6 @@ srcdir = @srcdir@ - VPATH = @srcdir@ - top_srcdir = @top_srcdir@ - --# Attempt to disable parallel processing. --.NOTPARALLEL: --.NO_PARALLEL: -- - @BIND9_VERSION@ - - @LIBDNS_API@ diff --git a/bind/patches/bind-9.9-libidn.patch b/bind/patches/bind-9.9-libidn.patch deleted file mode 100644 index fca8665..0000000 --- a/bind/patches/bind-9.9-libidn.patch +++ /dev/null @@ -1,326 +0,0 @@ -From 19809fe6154ea0471a2c4fa3bd66787facf7704a Mon Sep 17 00:00:00 2001 -From: Tomas Hozza -Date: Mon, 26 May 2014 15:25:34 +0200 -Subject: [PATCH] Use libidn instead of bundled idnkit - -Signed-off-by: Tomas Hozza ---- - bin/dig/Makefile.in | 6 +- - bin/dig/dig.docbook | 4 +- - bin/dig/dighost.c | 168 ++++++++++++++++++++++++++++++++++++++++++++++++---- - 3 files changed, 162 insertions(+), 16 deletions(-) - -diff --git a/bin/dig/Makefile.in b/bin/dig/Makefile.in -index 5bc4db0..3864e06 100644 ---- a/bin/dig/Makefile.in -+++ b/bin/dig/Makefile.in -@@ -48,10 +48,10 @@ DEPLIBS = ${DNSDEPLIBS} ${BIND9DEPLIBS} ${ISCDEPLIBS} ${ISCCFGDEPLIBS} \ - ${LWRESDEPLIBS} - - LIBS = ${LWRESLIBS} ${DNSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \ -- ${ISCLIBS} @IDNLIBS@ @LIBS@ -+ ${ISCLIBS} @IDNLIBS@ @LIBS@ -lidn - - NOSYMLIBS = ${LWRESLIBS} ${DNSLIBS} ${BIND9LIBS} ${ISCCFGLIBS} \ -- ${ISCNOSYMLIBS} @IDNLIBS@ @LIBS@ -+ ${ISCNOSYMLIBS} @IDNLIBS@ @LIBS@ -lidn - - SUBDIRS = - -@@ -69,6 +69,8 @@ HTMLPAGES = dig.html host.html nslookup.html - - MANOBJS = ${MANPAGES} ${HTMLPAGES} - -+EXT_CFLAGS = -DWITH_LIBIDN -+ - @BIND9_MAKE_RULES@ - - dig(a)EXEEXT@: dig.(a)O@ dighost.(a)O@ ${UOBJS} ${DEPLIBS} -diff --git a/bin/dig/dig.docbook b/bin/dig/dig.docbook -index 7a01ec0..c3a7976 100644 ---- a/bin/dig/dig.docbook -+++ b/bin/dig/dig.docbook -@@ -970,8 +970,8 @@ dig +qr www.isc.org any -x 127.0.0.1 isc.org ns +noqr - dig appropriately converts character encoding of - domain name before sending a request to DNS server or displaying a - reply from the server. -- If you'd like to turn off the IDN support for some reason, defines -- the IDN_DISABLE environment variable. -+ If you'd like to turn off the IDN support for some reason, define -+ the CHARSET=ASCII environment variable. - The IDN support is disabled if the variable is set when - dig runs. - -diff --git a/bin/dig/dighost.c b/bin/dig/dighost.c -index 56d763c..5a40051 100644 ---- a/bin/dig/dighost.c -+++ b/bin/dig/dighost.c -@@ -44,6 +44,11 @@ - #include - #endif - -+#ifdef WITH_LIBIDN -+#include -+#include -+#endif -+ - #include - #ifdef DIG_SIGCHASE - #include -@@ -158,6 +163,14 @@ static void idn_check_result(idn_result_t r, const char *msg); - int idnoptions = 0; - #endif - -+#ifdef WITH_LIBIDN -+static isc_result_t libidn_locale_to_utf8 (const char* from, char *to); -+static isc_result_t libidn_utf8_to_ascii (const char* from, char *to); -+static isc_result_t output_filter (isc_buffer_t *buffer, -+ unsigned int used_org, -+ isc_boolean_t absolute); -+#endif -+ - isc_socket_t *keep = NULL; - isc_sockaddr_t keepaddr; - -@@ -1210,6 +1223,9 @@ setup_system(void) { - dig_searchlist_t *domain = NULL; - lwres_result_t lwresult; - unsigned int lwresflags; -+#ifdef WITH_LIBIDN -+ isc_result_t result; -+#endif - - debug("setup_system()"); - -@@ -1268,8 +1284,15 @@ setup_system(void) { - - #ifdef WITH_IDN - initialize_idn(); -+ -+#endif -+#ifdef WITH_LIBIDN -+ result = dns_name_settotextfilter(output_filter); -+ check_result(result, "dns_name_settotextfilter"); -+#ifdef HAVE_SETLOCALE -+ setlocale (LC_ALL, ""); -+#endif - #endif -- - if (keyfile[0] != 0) - setup_file_key(); - else if (keysecret[0] != 0) -@@ -2028,12 +2051,14 @@ setup_lookup(dig_lookup_t *lookup) { - idn_result_t mr; - char utf8_textname[MXNAME], utf8_origin[MXNAME], idn_textname[MXNAME]; - #endif -+#ifdef WITH_LIBIDN -+ char utf8_str[MXNAME], utf8_name[MXNAME], ascii_name[MXNAME]; -+#endif - --#ifdef WITH_IDN -+#if defined (WITH_IDN) || defined (WITH_LIBIDN) - result = dns_name_settotextfilter(output_filter); - check_result(result, "dns_name_settotextfilter"); - #endif -- - REQUIRE(lookup != NULL); - INSIST(!free_now); - -@@ -2070,6 +2095,14 @@ setup_lookup(dig_lookup_t *lookup) { - mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, lookup->textname, - utf8_textname, sizeof(utf8_textname)); - idn_check_result(mr, "convert textname to UTF-8"); -+#elif defined (WITH_LIBIDN) -+ result = libidn_locale_to_utf8 (lookup->textname, utf8_str); -+ check_result (result, "convert textname to UTF-8"); -+ len = strlen (utf8_str); -+ if (len < MXNAME) -+ (void) strcpy (utf8_name, utf8_str); -+ else -+ fatal ("Too long name"); - #endif - - /* -@@ -2082,15 +2115,11 @@ setup_lookup(dig_lookup_t *lookup) { - if (lookup->new_search) { - #ifdef WITH_IDN - if ((count_dots(utf8_textname) >= ndots) || !usesearch) { -- lookup->origin = NULL; /* Force abs lookup */ -- lookup->done_as_is = ISC_TRUE; -- lookup->need_search = usesearch; -- } else if (lookup->origin == NULL && usesearch) { -- lookup->origin = ISC_LIST_HEAD(search_list); -- lookup->need_search = ISC_FALSE; -- } -+#elif defined (WITH_LIBIDN) -+ if ((count_dots(utf8_name) >= ndots) || !usesearch) { - #else - if ((count_dots(lookup->textname) >= ndots) || !usesearch) { -+#endif - lookup->origin = NULL; /* Force abs lookup */ - lookup->done_as_is = ISC_TRUE; - lookup->need_search = usesearch; -@@ -2098,7 +2127,6 @@ setup_lookup(dig_lookup_t *lookup) { - lookup->origin = ISC_LIST_HEAD(search_list); - lookup->need_search = ISC_FALSE; - } --#endif - } - - #ifdef WITH_IDN -@@ -2115,6 +2143,20 @@ setup_lookup(dig_lookup_t *lookup) { - IDN_IDNCONV | IDN_LENCHECK, utf8_textname, - idn_textname, sizeof(idn_textname)); - idn_check_result(mr, "convert UTF-8 textname to IDN encoding"); -+#elif defined (WITH_LIBIDN) -+ if (lookup->origin != NULL) { -+ result = libidn_locale_to_utf8 (lookup->origin->origin, utf8_str); -+ check_result (result, "convert origin to UTF-8"); -+ if (len > 0 && utf8_name[len - 1] != '.') { -+ utf8_name[len++] = '.'; -+ if (len + strlen (utf8_str) < MXNAME) -+ (void) strcpy (utf8_name + len, utf8_str); -+ else -+ fatal ("Too long name + origin"); -+ } -+ } -+ -+ result = libidn_utf8_to_ascii (utf8_name, ascii_name); - #else - if (lookup->origin != NULL) { - debug("trying origin %s", lookup->origin->origin); -@@ -2170,6 +2212,13 @@ setup_lookup(dig_lookup_t *lookup) { - result = dns_name_fromtext(lookup->name, &b, - dns_rootname, 0, - &lookup->namebuf); -+#elif defined (WITH_LIBIDN) -+ len = strlen (ascii_name); -+ isc_buffer_init(&b, ascii_name, len); -+ isc_buffer_add(&b, len); -+ result = dns_name_fromtext(lookup->name, &b, -+ dns_rootname, 0, -+ &lookup->namebuf); - #else - len = strlen(lookup->textname); - isc_buffer_init(&b, lookup->textname, len); -@@ -3788,7 +3837,7 @@ destroy_libs(void) { - void * ptr; - dig_message_t *chase_msg; - #endif --#ifdef WITH_IDN -+#if defined (WITH_IDN) || defined (WITH_LIBIDN) - isc_result_t result; - #endif - -@@ -3829,6 +3878,10 @@ destroy_libs(void) { - result = dns_name_settotextfilter(NULL); - check_result(result, "dns_name_settotextfilter"); - #endif -+#ifdef WITH_LIBIDN -+ result = dns_name_settotextfilter (NULL); -+ check_result(result, "clearing dns_name_settotextfilter"); -+#endif - dns_name_destroy(); - - if (commctx != NULL) { -@@ -4008,6 +4061,97 @@ idn_check_result(idn_result_t r, const char *msg) { - } - } - #endif /* WITH_IDN */ -+#ifdef WITH_LIBIDN -+static isc_result_t -+libidn_locale_to_utf8 (const char *from, char *to) { -+ char *utf8_str; -+ -+ debug ("libidn_locale_to_utf8"); -+ utf8_str = stringprep_locale_to_utf8 (from); -+ if (utf8_str != NULL) { -+ (void) strcpy (to, utf8_str); -+ free (utf8_str); -+ return ISC_R_SUCCESS; -+ } -+ -+ debug ("libidn_locale_to_utf8: failure"); -+ return ISC_R_FAILURE; -+} -+static isc_result_t -+libidn_utf8_to_ascii (const char *from, char *to) { -+ char *ascii; -+ int iresult; -+ -+ debug ("libidn_utf8_to_ascii"); -+ iresult = idna_to_ascii_8z (from, &ascii, 0); -+ if (iresult != IDNA_SUCCESS) { -+ debug ("idna_to_ascii_8z: %s", idna_strerror (iresult)); -+ return ISC_R_FAILURE; -+ } -+ -+ (void) strcpy (to, ascii); -+ free (ascii); -+ return ISC_R_SUCCESS; -+} -+ -+static isc_result_t -+output_filter (isc_buffer_t *buffer, unsigned int used_org, -+ isc_boolean_t absolute) { -+ -+ char tmp1[MXNAME], *tmp2; -+ size_t fromlen, tolen; -+ isc_boolean_t end_with_dot; -+ int iresult; -+ -+ debug ("output_filter"); -+ -+ fromlen = isc_buffer_usedlength (buffer) - used_org; -+ if (fromlen >= MXNAME) -+ return ISC_R_SUCCESS; -+ memcpy (tmp1, (char *) isc_buffer_base (buffer) + used_org, fromlen); -+ end_with_dot = (tmp1[fromlen - 1] == '.') ? ISC_TRUE : ISC_FALSE; -+ if (absolute && !end_with_dot) { -+ fromlen++; -+ if (fromlen >= MXNAME) -+ return ISC_R_SUCCESS; -+ tmp1[fromlen - 1] = '.'; -+ } -+ tmp1[fromlen] = '\0'; -+ -+ iresult = idna_to_unicode_8z8z (tmp1, &tmp2, 0); -+ if (iresult != IDNA_SUCCESS) { -+ debug ("output_filter: %s", idna_strerror (iresult)); -+ return ISC_R_SUCCESS; -+ } -+ -+ (void) strcpy (tmp1, tmp2); -+ free (tmp2); -+ -+ tmp2 = stringprep_utf8_to_locale (tmp1); -+ if (tmp2 == NULL) { -+ debug ("output_filter: stringprep_utf8_to_locale failed"); -+ return ISC_R_SUCCESS; -+ } -+ -+ (void) strcpy (tmp1, tmp2); -+ free (tmp2); -+ -+ tolen = strlen (tmp1); -+ if (absolute && !end_with_dot && tmp1[tolen - 1] == '.') -+ tolen--; -+ -+ if (isc_buffer_length (buffer) < used_org + tolen) -+ return ISC_R_NOSPACE; -+ -+ debug ("%s", tmp1); -+ -+ isc_buffer_subtract (buffer, isc_buffer_usedlength (buffer) - used_org); -+ memcpy (isc_buffer_used (buffer), tmp1, tolen); -+ isc_buffer_add (buffer, tolen); -+ -+ return ISC_R_SUCCESS; -+} -+#endif /* WITH_LIBIDN*/ - - #ifdef DIG_SIGCHASE - void --- -1.9.0 - diff --git a/bind/patches/bind-9.7-exportlib.patch b/bind/patches/bind97-exportlib.patch similarity index 100% rename from bind/patches/bind-9.7-exportlib.patch rename to bind/patches/bind97-exportlib.patch diff --git a/bind/patches/bind99-dont-build-bin.patch b/bind/patches/bind99-dont-build-bin.patch new file mode 100644 index 0000000..ae50372 --- /dev/null +++ b/bind/patches/bind99-dont-build-bin.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile.in b/Makefile.in +index 4f7f5a6..d59b9b1 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@ + + VERSION=@BIND9_VERSION@ + +-SUBDIRS = make unit lib bin doc @LIBEXPORT@ ++SUBDIRS = make lib doc @LIBEXPORT@ + TARGETS = + + MANPAGES = isc-config.sh.1 diff --git a/dhcp/dhcp.nm b/dhcp/dhcp.nm index 4cee3bd..eafb0b0 100644 --- a/dhcp/dhcp.nm +++ b/dhcp/dhcp.nm @@ -4,8 +4,8 @@ ############################################################################### name = dhcp -version = 4.2.5 -release = 3 +version = 4.3.5b1 +release = 1 groups = Networking/Daemons url = http://isc.org/products/DHCP/ @@ -22,61 +22,17 @@ end source_dl = ftp://ftp.isc.org/isc/dhcp/%{version}/ -# Apply patches in a special order. -patches = \ - dhcp-4.2.5-remove-bind.patch \ - dhcp-4.2.4-P1-remove-dst.patch \ - dhcp-4.2.0-errwarn-message.patch \ - dhcp-4.2.4-dhclient-options.patch \ - dhcp-4.2.0-release-by-ifup.patch \ - dhcp-4.2.0-dhclient-decline-backoff.patch \ - dhcp-4.2.4-unicast-bootp.patch \ - dhcp-4.2.0-default-requested-options.patch \ - dhcp-4.2.2-xen-checksum.patch \ - dhcp-4.2.5-manpages.patch \ - dhcp-4.2.4-paths.patch \ - dhcp-4.2.2-CLOEXEC.patch \ - dhcp-4.2.0-garbage-chars.patch \ - dhcp-4.2.0-add_timeout_when_NULL.patch \ - dhcp-4.2.4-64_bit_lease_parse.patch \ - dhcp-4.2.2-capability.patch \ - dhcp-4.2.0-logpid.patch \ - dhcp-4.2.4-UseMulticast.patch \ - dhcp-4.2.5-sendDecline.patch \ - dhcp-4.2.1-retransmission.patch \ - dhcp-4.2.5-rfc3442-classless-static-routes.patch \ - dhcp-4.2.0-honor-expired.patch \ - dhcp-4.2.5-sharedlib.patch \ - dhcp-4.2.5-PPP.patch \ - dhcp-4.2.5-paranoia.patch \ - dhcp-4.2.5-lpf-ib.patch \ - dhcp-4.2.4-improved-xid.patch \ - dhcp-4.2.2-gpxe-cid.patch \ - dhcp-4.2.5-systemtap.patch \ - dhcp-4.2.3-dhclient-decline-onetry.patch \ - dhcp-4.2.3-P2-log_perror.patch \ - dhcp-4.2.4-getifaddrs.patch \ - dhcp-4.2.4-send_release.patch \ - dhcp-4.2.5-rfc5970-dhcpv6-options-for-network-boot.patch \ - dhcp-4.2.4-failOverPeer.patch \ - dhcp-4.2.5b1-atf-pkgconfig.patch \ - dhcp-4.2.4-P1-interval.patch \ - dhcp-4.2.4-P2-conflex-do-forward-updates.patch \ - dhcp-4.2.4-P2-dupl-key.patch \ - dhcp-4.2.5-range6.patch \ - dhcp-4.2.5-next-server.patch - build requires autoconf automake - bind-devel>=9 + bind-devel>=9.9.9-P6 bind-devel<10 groff libtool openldap-devel libcap-ng-devel - systemd-units + systemd-devel end CFLAGS += -fno-strict-aliasing @@ -98,18 +54,37 @@ build --with-libbind-libs=/usr/lib/ \ --disable-static \ --enable-paranoia \ - --enable-early-chroot + --enable-early-chroot \ + --enable-binary-leases \ + --with-systemd prepare_cmds # Remove bundled BIND source rm -rvf %{DIR_APP}/bind/bind.tar.gz - # Remove dst. - rm -rvf dst includes/isc-dhcp - # Regenerate build environment - #libtoolize --copy --force autoreconf --verbose --force --install + + # Change DHCLIENT_DEFAULT_PREFIX_LEN 64 -> 128 + sed -i -e 's|DHCLIENT_DEFAULT_PREFIX_LEN 64|DHCLIENT_DEFAULT_PREFIX_LEN 128|g' \ + includes/site.h + + # Update PATH in all manpages + for page in client/dhclient.conf.5 client/dhclient.leases.5 \ + client/dhclient-script.8 client/dhclient.8 ; do + + sed -i -e 's|CLIENTBINDIR|%{sbindir}|g' \ + -e 's|RUNDIR|/run|g' \ + -e 's|DBDIR|%{localstatedir}/lib/dhclient|g' \ + -e 's|ETCDIR|%{dhcpconfdir}|g' $page + done + + for page in server/dhcpd.conf.5 server/dhcpd.leases.5 server/dhcpd.8 ; do + sed -i -e 's|CLIENTBINDIR|%{sbindir}|g' \ + -e 's|RUNDIR|/run|g' \ + -e 's|DBDIR|%{localstatedir}/lib/dhcpd|g' \ + -e 's|ETCDIR|%{dhcpconfdir}|g' $page + done end install_cmds diff --git a/dhcp/patches/0001-dhcp-remove-bind.patch b/dhcp/patches/0001-dhcp-remove-bind.patch new file mode 100644 index 0000000..46bd323 --- /dev/null +++ b/dhcp/patches/0001-dhcp-remove-bind.patch @@ -0,0 +1,261 @@ +diff -up dhcp-4.3.5b1/client/Makefile.am.remove-bind dhcp-4.3.5b1/client/Makefile.am +--- dhcp-4.3.5b1/client/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/client/Makefile.am 2016-09-12 17:00:22.797902248 +0200 +@@ -4,8 +4,6 @@ + # production code. Sadly, we are not there yet. + SUBDIRS = . tests + +-BINDLIBDIR = @BINDDIR@/lib +- + AM_CPPFLAGS = -DCLIENT_PATH='"PATH=$(sbindir):/sbin:/bin:/usr/sbin:/usr/bin"' \ + -DLOCALSTATEDIR='"$(localstatedir)"' + +@@ -15,7 +13,7 @@ dhclient_SOURCES = clparse.c dhclient.c + scripts/bsdos scripts/freebsd scripts/linux scripts/macos \ + scripts/netbsd scripts/nextstep scripts/openbsd \ + scripts/solaris scripts/openwrt +-dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5 + EXTRA_DIST = $(man_MANS) +diff -up dhcp-4.3.5b1/common/tests/Makefile.am.remove-bind dhcp-4.3.5b1/common/tests/Makefile.am +--- dhcp-4.3.5b1/common/tests/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/common/tests/Makefile.am 2016-09-12 17:07:42.168232452 +0200 +@@ -1,7 +1,5 @@ + SUBDIRS = . + +-BINDLIBDIR = @BINDDIR@/lib +- + AM_CPPFLAGS = $(ATF_CFLAGS) -I$(top_srcdir)/includes + + EXTRA_DIST = Atffile +@@ -15,26 +13,26 @@ ATF_TESTS += alloc_unittest dns_unittest + alloc_unittest_SOURCES = test_alloc.c $(top_srcdir)/tests/t_api_dhcp.c + alloc_unittest_LDADD = $(ATF_LDFLAGS) + alloc_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ ../../omapip/libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + dns_unittest_SOURCES = dns_unittest.c $(top_srcdir)/tests/t_api_dhcp.c + dns_unittest_LDADD = $(ATF_LDFLAGS) + dns_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ ../../omapip/libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + misc_unittest_SOURCES = misc_unittest.c $(top_srcdir)/tests/t_api_dhcp.c + misc_unittest_LDADD = $(ATF_LDFLAGS) + misc_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ ../../omapip/libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + ns_name_unittest_SOURCES = ns_name_test.c $(top_srcdir)/tests/t_api_dhcp.c + ns_name_unittest_LDADD = $(ATF_LDFLAGS) + ns_name_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ ../../omapip/libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + check: $(ATF_TESTS) + @if test $(top_srcdir) != ${top_builddir}; then \ +diff -up dhcp-4.3.5b1/configure.ac.remove-bind dhcp-4.3.5b1/configure.ac +--- dhcp-4.3.5b1/configure.ac.remove-bind 2016-08-26 20:24:41.000000000 +0200 ++++ dhcp-4.3.5b1/configure.ac 2016-09-12 17:00:22.798902249 +0200 +@@ -682,20 +682,33 @@ AC_CHECK_MEMBER(struct tpacket_auxdata.t + BINDDIR= + BINDSRCDIR= + AC_ARG_WITH(libbind, +- AS_HELP_STRING([--with-libbind=PATH],[bind includes and libraries are in PATH +- (default is ./bind)]), ++ AS_HELP_STRING([--with-libbind=PATH],[bind includes are in PATH ++ (default is ./bind/includes)]), + use_libbind="$withval", use_libbind="no") + case "$use_libbind" in ++yes|no) ++ libbind="\${top_srcdir}/bind/include" ++ ;; ++*) ++ libbind="$use_libbind" ++ ;; ++esac ++ ++BIND9_LIBDIR='-L$(top_builddir)/bind/lib' ++AC_ARG_WITH(libbind-libs, ++ AC_HELP_STRING([--with-libbind-libs=PATH], ++ [bind9 export libraries are in PATH]), ++ [libbind_libs="$withval"], [libbind_libs='no']) ++case "$libbind_libs" in + yes) +- BINDDIR="\${top_srcdir}/bind" +- BINDSRCDIR="\${top_srcdir}/bind" ++ AC_MSG_ERROR([Specify path to bind9 libraries]) + ;; + no) +- BINDDIR="\${top_srcdir}/bind" +- BINDSRCDIR="\${top_srcdir}/bind" ++ BUNDLED_BIND=yes + ;; + *) +- BINDDIR="$use_libbind" ++ BIND9_LIBDIR="-L$libbind_libs" ++ BUNDLED_BIND=no + if test ! -d "$srcdir/bind"; then + # no bind directory, create it with a fake Makefile.in + # (AC_CONFIG_FILES and top Makefile refer to it so +@@ -709,8 +722,8 @@ EOF + fi + ;; + esac +-AC_SUBST(BINDDIR) +-AC_SUBST(BINDSRCDIR) ++AM_CONDITIONAL([BUNDLED_BIND], [test "$BUNDLED_BIND" = yes]) ++AC_SUBST([BIND9_LIBDIR]) + + # OpenLDAP support. + AC_ARG_WITH(ldap, +@@ -788,7 +801,7 @@ fi + CFLAGS="$CFLAGS $STD_CWARNINGS" + + # Try to add the bind and dhcp include directories +-CFLAGS="$CFLAGS -I\$(top_srcdir)/includes -I$BINDDIR/include" ++CFLAGS="$CFLAGS -I$libbind" + + case "$host" in + *-darwin*) +diff -up dhcp-4.3.5b1/dhcpctl/Makefile.am.remove-bind dhcp-4.3.5b1/dhcpctl/Makefile.am +--- dhcp-4.3.5b1/dhcpctl/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/dhcpctl/Makefile.am 2016-09-12 17:00:22.798902249 +0200 +@@ -1,5 +1,3 @@ +-BINDLIBDIR = @BINDDIR@/lib +- + bin_PROGRAMS = omshell + lib_LIBRARIES = libdhcpctl.a + noinst_PROGRAMS = cltest +@@ -8,12 +6,10 @@ EXTRA_DIST = $(man_MANS) + + omshell_SOURCES = omshell.c + omshell_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ +- $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ +- $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + libdhcpctl_a_SOURCES = dhcpctl.c callback.c remote.c + + cltest_SOURCES = cltest.c + cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ +- $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ +- $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export +diff -up dhcp-4.3.5b1/Makefile.am.remove-bind dhcp-4.3.5b1/Makefile.am +--- dhcp-4.3.5b1/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/Makefile.am 2016-09-12 17:00:22.798902249 +0200 +@@ -26,7 +26,13 @@ EXTRA_DIST = RELNOTES LICENSE \ + bind/Makefile.in bind/bind.tar.gz bind/version.tmp \ + common/tests/Atffile server/tests/Atffile + +-SUBDIRS = @BINDSRCDIR@ includes tests common omapip client dhcpctl relay server ++if BUNDLED_BIND ++SUBDIRS = bind ++else ++SUBDIRS = ++endif ++ ++SUBDIRS += includes tests common omapip client dhcpctl relay server + + nobase_include_HEADERS = dhcpctl/dhcpctl.h + +diff -up dhcp-4.3.5b1/omapip/Makefile.am.remove-bind dhcp-4.3.5b1/omapip/Makefile.am +--- dhcp-4.3.5b1/omapip/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/omapip/Makefile.am 2016-09-12 17:00:22.798902249 +0200 +@@ -1,5 +1,3 @@ +-BINDLIBDIR = @BINDDIR@/lib +- + lib_LIBRARIES = libomapi.a + noinst_PROGRAMS = svtest + +@@ -12,6 +10,6 @@ man_MANS = omapi.3 + EXTRA_DIST = $(man_MANS) + + svtest_SOURCES = test.c +-svtest_LDADD = libomapi.a $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ +- $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++svtest_LDADD = libomapi.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + +diff -up dhcp-4.3.5b1/relay/Makefile.am.remove-bind dhcp-4.3.5b1/relay/Makefile.am +--- dhcp-4.3.5b1/relay/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/relay/Makefile.am 2016-09-12 17:00:22.798902249 +0200 +@@ -1,12 +1,9 @@ +-BINDLIBDIR = @BINDDIR@/lib +- + AM_CPPFLAGS = -DLOCALSTATEDIR='"@localstatedir@"' + + sbin_PROGRAMS = dhcrelay + dhcrelay_SOURCES = dhcrelay.c + dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ +- $(BINDLIBDIR)/libirs.a $(BINDLIBDIR)/libdns.a \ +- $(BINDLIBDIR)/libisccfg.a $(BINDLIBDIR)/libisc.a ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + man_MANS = dhcrelay.8 + EXTRA_DIST = $(man_MANS) + +diff -up dhcp-4.3.5b1/server/Makefile.am.remove-bind dhcp-4.3.5b1/server/Makefile.am +--- dhcp-4.3.5b1/server/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/server/Makefile.am 2016-09-12 17:00:22.798902249 +0200 +@@ -4,8 +4,6 @@ + # production code. Sadly, we are not there yet. + SUBDIRS = . tests + +-BINDLIBDIR = @BINDDIR@/lib +- + AM_CPPFLAGS = -I.. -DLOCALSTATEDIR='"@localstatedir@"' + + dist_sysconf_DATA = dhcpd.conf.example +@@ -15,10 +13,9 @@ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c c + dhcpv6.c mdb6.c ldap.c ldap_casa.c leasechain.c ldap_krb_helper.c + + dhcpd_CFLAGS = $(LDAP_CFLAGS) +-dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ +- ../dhcpctl/libdhcpctl.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a \ +- $(BINDLIBDIR)/libisc.a $(LDAP_LIBS) ++dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.a ../dhcpctl/libdhcpctl.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export \ ++ $(LDAP_LIBS) + + man_MANS = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5 + EXTRA_DIST = $(man_MANS) +diff -up dhcp-4.3.5b1/server/tests/Makefile.am.remove-bind dhcp-4.3.5b1/server/tests/Makefile.am +--- dhcp-4.3.5b1/server/tests/Makefile.am.remove-bind 2016-08-26 20:19:53.000000000 +0200 ++++ dhcp-4.3.5b1/server/tests/Makefile.am 2016-09-12 17:00:22.799902249 +0200 +@@ -1,9 +1,7 @@ + SUBDIRS = . + +-BINDLIBDIR = @BINDDIR@/lib +- + AM_CPPFLAGS = $(ATF_CFLAGS) -DUNIT_TEST -I$(top_srcdir)/includes +-AM_CPPFLAGS += -I(a)BINDDIR@/include -I$(top_srcdir) ++AM_CPPFLAGS += -I$(top_srcdir) + AM_CPPFLAGS += -DLOCALSTATEDIR='"."' + + EXTRA_DIST = Atffile +@@ -20,9 +18,8 @@ DHCPSRC = ../dhcp.c ../bootp.c ../confpa + ../ldap.c ../ldap_casa.c ../dhcpd.c ../leasechain.c + + DHCPLIBS = $(top_builddir)/common/libdhcp.a $(top_builddir)/omapip/libomapi.a \ +- $(top_builddir)/dhcpctl/libdhcpctl.a $(BINDLIBDIR)/libirs.a \ +- $(BINDLIBDIR)/libdns.a $(BINDLIBDIR)/libisccfg.a \ +- $(BINDLIBDIR)/libisc.a ++ $(top_builddir)/dhcpctl/libdhcpctl.a \ ++ $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + ATF_TESTS = + if HAVE_ATF diff --git a/dhcp/patches/0002-dhcp-sharedlib.patch b/dhcp/patches/0002-dhcp-sharedlib.patch new file mode 100644 index 0000000..3427f78 --- /dev/null +++ b/dhcp/patches/0002-dhcp-sharedlib.patch @@ -0,0 +1,140 @@ +diff -up dhcp-4.3.4/client/Makefile.am.sharedlib dhcp-4.3.4/client/Makefile.am +--- dhcp-4.3.4/client/Makefile.am.sharedlib 2016-04-29 11:48:30.389923087 +0200 ++++ dhcp-4.3.4/client/Makefile.am 2016-04-29 11:48:30.393923084 +0200 +@@ -13,7 +13,7 @@ dhclient_SOURCES = clparse.c dhclient.c + scripts/bsdos scripts/freebsd scripts/linux scripts/macos \ + scripts/netbsd scripts/nextstep scripts/openbsd \ + scripts/solaris scripts/openwrt +-dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ ++dhclient_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + man_MANS = dhclient.8 dhclient-script.8 dhclient.conf.5 dhclient.leases.5 + EXTRA_DIST = $(man_MANS) +diff -up dhcp-4.3.4/common/tests/Makefile.am.sharedlib dhcp-4.3.4/common/tests/Makefile.am +--- dhcp-4.3.4/common/tests/Makefile.am.sharedlib 2016-04-29 11:48:30.394923084 +0200 ++++ dhcp-4.3.4/common/tests/Makefile.am 2016-04-29 11:54:16.890716651 +0200 +@@ -13,25 +13,25 @@ ATF_TESTS += alloc_unittest dns_unittest + alloc_unittest_SOURCES = test_alloc.c $(top_srcdir)/tests/t_api_dhcp.c + alloc_unittest_LDADD = $(ATF_LDFLAGS) + alloc_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a \ ++ ../../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + dns_unittest_SOURCES = dns_unittest.c $(top_srcdir)/tests/t_api_dhcp.c + dns_unittest_LDADD = $(ATF_LDFLAGS) + dns_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a \ ++ ../../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + misc_unittest_SOURCES = misc_unittest.c $(top_srcdir)/tests/t_api_dhcp.c + misc_unittest_LDADD = $(ATF_LDFLAGS) + misc_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a \ ++ ../../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + ns_name_unittest_SOURCES = ns_name_test.c $(top_srcdir)/tests/t_api_dhcp.c + ns_name_unittest_LDADD = $(ATF_LDFLAGS) + ns_name_unittest_LDADD += ../libdhcp.a \ +- ../../omapip/libomapi.a \ ++ ../../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + check: $(ATF_TESTS) +diff -up dhcp-4.3.4/configure.ac.sharedlib dhcp-4.3.4/configure.ac +--- dhcp-4.3.4/configure.ac.sharedlib 2016-04-29 11:48:30.394923084 +0200 ++++ dhcp-4.3.4/configure.ac 2016-04-29 11:55:22.729691668 +0200 +@@ -47,7 +47,8 @@ AM_CONDITIONAL(CROSS_COMPILING, test "$c + # Use this to define _GNU_SOURCE to pull in the IPv6 Advanced Socket API. + AC_USE_SYSTEM_EXTENSIONS + +-AC_PROG_RANLIB ++# Use libtool to simplify building of shared libraries ++AC_PROG_LIBTOOL + + AC_PATH_PROG(AR, ar) + AC_SUBST(AR) +diff -up dhcp-4.3.4/dhcpctl/Makefile.am.sharedlib dhcp-4.3.4/dhcpctl/Makefile.am +--- dhcp-4.3.4/dhcpctl/Makefile.am.sharedlib 2016-04-29 11:48:30.394923084 +0200 ++++ dhcp-4.3.4/dhcpctl/Makefile.am 2016-04-29 11:56:18.390670546 +0200 +@@ -1,15 +1,15 @@ + bin_PROGRAMS = omshell +-lib_LIBRARIES = libdhcpctl.a ++lib_LTLIBRARIES = libdhcpctl.la + noinst_PROGRAMS = cltest + man_MANS = omshell.1 dhcpctl.3 + EXTRA_DIST = $(man_MANS) + + omshell_SOURCES = omshell.c +-omshell_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ ++omshell_LDADD = libdhcpctl.la ../common/libdhcp.a ../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + +-libdhcpctl_a_SOURCES = dhcpctl.c callback.c remote.c ++libdhcpctl_la_SOURCES = dhcpctl.c callback.c remote.c + + cltest_SOURCES = cltest.c +-cltest_LDADD = libdhcpctl.a ../common/libdhcp.a ../omapip/libomapi.a \ ++cltest_LDADD = libdhcpctl.la ../common/libdhcp.a ../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export +diff -up dhcp-4.3.4/omapip/Makefile.am.sharedlib dhcp-4.3.4/omapip/Makefile.am +--- dhcp-4.3.4/omapip/Makefile.am.sharedlib 2016-04-29 11:48:30.392923085 +0200 ++++ dhcp-4.3.4/omapip/Makefile.am 2016-04-29 11:57:33.709641969 +0200 +@@ -1,7 +1,7 @@ +-lib_LIBRARIES = libomapi.a ++lib_LTLIBRARIES = libomapi.la + noinst_PROGRAMS = svtest + +-libomapi_a_SOURCES = protocol.c buffer.c alloc.c result.c connection.c \ ++libomapi_la_SOURCES = protocol.c buffer.c alloc.c result.c connection.c \ + errwarn.c listener.c dispatch.c generic.c support.c \ + handle.c message.c convert.c hash.c auth.c inet_addr.c \ + array.c trace.c toisc.c iscprint.c isclib.c +@@ -10,6 +10,6 @@ man_MANS = omapi.3 + EXTRA_DIST = $(man_MANS) + + svtest_SOURCES = test.c +-svtest_LDADD = libomapi.a \ ++svtest_LDADD = libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + +diff -up dhcp-4.3.4/relay/Makefile.am.sharedlib dhcp-4.3.4/relay/Makefile.am +--- dhcp-4.3.4/relay/Makefile.am.sharedlib 2016-04-29 11:48:30.392923085 +0200 ++++ dhcp-4.3.4/relay/Makefile.am 2016-04-29 11:48:30.395923083 +0200 +@@ -2,7 +2,7 @@ AM_CPPFLAGS = -DLOCALSTATEDIR='"@localst + + sbin_PROGRAMS = dhcrelay + dhcrelay_SOURCES = dhcrelay.c +-dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.a \ ++dhcrelay_LDADD = ../common/libdhcp.a ../omapip/libomapi.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + man_MANS = dhcrelay.8 + EXTRA_DIST = $(man_MANS) +diff -up dhcp-4.3.4/server/Makefile.am.sharedlib dhcp-4.3.4/server/Makefile.am +--- dhcp-4.3.4/server/Makefile.am.sharedlib 2016-04-29 11:48:30.392923085 +0200 ++++ dhcp-4.3.4/server/Makefile.am 2016-04-29 11:48:30.395923083 +0200 +@@ -13,7 +13,7 @@ dhcpd_SOURCES = dhcpd.c dhcp.c bootp.c c + dhcpv6.c mdb6.c ldap.c ldap_casa.c leasechain.c ldap_krb_helper.c + + dhcpd_CFLAGS = $(LDAP_CFLAGS) +-dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.a ../dhcpctl/libdhcpctl.a \ ++dhcpd_LDADD = ../common/libdhcp.a ../omapip/libomapi.la ../dhcpctl/libdhcpctl.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export \ + $(LDAP_LIBS) + +diff -up dhcp-4.3.4/server/tests/Makefile.am.sharedlib dhcp-4.3.4/server/tests/Makefile.am +--- dhcp-4.3.4/server/tests/Makefile.am.sharedlib 2016-04-29 11:48:30.395923083 +0200 ++++ dhcp-4.3.4/server/tests/Makefile.am 2016-04-29 11:59:13.414604130 +0200 +@@ -17,8 +17,8 @@ DHCPSRC = ../dhcp.c ../bootp.c ../confpa + ../ddns.c ../dhcpleasequery.c ../dhcpv6.c ../mdb6.c \ + ../ldap.c ../ldap_casa.c ../dhcpd.c ../leasechain.c + +-DHCPLIBS = $(top_builddir)/common/libdhcp.a $(top_builddir)/omapip/libomapi.a \ +- $(top_builddir)/dhcpctl/libdhcpctl.a \ ++DHCPLIBS = $(top_builddir)/common/libdhcp.a $(top_builddir)/omapip/libomapi.la \ ++ $(top_builddir)/dhcpctl/libdhcpctl.la \ + $(BIND9_LIBDIR) -lirs-export -ldns-export -lisccfg-export -lisc-export + + ATF_TESTS = diff --git a/dhcp/patches/0003-dhcp-errwarn-message.patch b/dhcp/patches/0003-dhcp-errwarn-message.patch new file mode 100644 index 0000000..f42d1e9 --- /dev/null +++ b/dhcp/patches/0003-dhcp-errwarn-message.patch @@ -0,0 +1,64 @@ +diff -up dhcp-4.3.5/omapip/errwarn.c.errwarn dhcp-4.3.5/omapip/errwarn.c +--- dhcp-4.3.5/omapip/errwarn.c.errwarn 2016-09-27 21:16:50.000000000 +0200 ++++ dhcp-4.3.5/omapip/errwarn.c 2016-11-29 19:44:03.515031147 +0100 +@@ -49,6 +49,41 @@ void (*log_cleanup) (void); + static char mbuf [CVT_BUF_MAX + 1]; + static char fbuf [CVT_BUF_MAX + 1]; + ++// get BUG_REPORT_URL from /etc/os-release ++char * bug_report_url(void) { ++ FILE * file = fopen("/etc/os-release", "r"); ++ size_t len; ++ char * line = NULL; ++ char * url = NULL; ++ size_t url_len = 256; ++ ++ url = (char *) malloc(url_len * sizeof(char)); ++ strcpy(url, "https://bugzilla.redhat.com/"); ++ ++ if (!file) ++ return url; ++ ++ while ((getline(&line, &len, file)) != -1) { ++ if (strstr(line, "BUG_REPORT_URL") != NULL) { ++ char * start = strchr(line, '='); ++ char * rquotes = strrchr(line, '"'); ++ ++ if (rquotes != NULL) { ++ *rquotes = '\0'; ++ strncpy(url, start+2, url_len); ++ } else { ++ strncpy(url, start+1, url_len); ++ } ++ url[url_len-1] = '\0'; ++ fclose(file); ++ return url; ++ } ++ } ++ fclose(file); ++ return url; ++} ++ ++ + /* Log an error message, then exit... */ + + void log_fatal (const char * fmt, ... ) +@@ -75,11 +110,13 @@ void log_fatal (const char * fmt, ... ) + } + + log_error ("%s", ""); +- log_error ("If you think you have received this message due to a bug rather"); +- log_error ("than a configuration issue please read the section on submitting"); +- log_error ("bugs on either our web page at www.isc.org or in the README file"); +- log_error ("before submitting a bug. These pages explain the proper"); +- log_error ("process and the information we find helpful for debugging.."); ++ 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 ("Please report issues with this software via: "); ++ log_error ("%s", bug_report_url()); + log_error ("%s", ""); + log_error ("exiting."); + diff --git a/dhcp/patches/dhcp-4.2.4-dhclient-options.patch b/dhcp/patches/0004-dhcp-dhclient-options.patch similarity index 72% rename from dhcp/patches/dhcp-4.2.4-dhclient-options.patch rename to dhcp/patches/0004-dhcp-dhclient-options.patch index 40c3271..8f0dfe9 100644 --- a/dhcp/patches/dhcp-4.2.4-dhclient-options.patch +++ b/dhcp/patches/0004-dhcp-dhclient-options.patch @@ -1,14 +1,48 @@ -diff -up dhcp-4.2.1b1/client/dhclient.8.man dhcp-4.2.1b1/client/dhclient.8 ---- dhcp-4.2.1b1/client/dhclient.8.man 2010-07-14 22:09:34.000000000 +0200 -+++ dhcp-4.2.1b1/client/dhclient.8 2011-01-27 18:19:07.000000000 +0100 -@@ -115,6 +115,33 @@ dhclient - Dynamic Host Configuration Pr +diff -up dhcp-4.3.4/client/clparse.c.options dhcp-4.3.4/client/clparse.c +--- dhcp-4.3.4/client/clparse.c.options 2016-03-22 14:16:51.000000000 +0100 ++++ dhcp-4.3.4/client/clparse.c 2016-04-29 12:06:13.485470579 +0200 +@@ -189,6 +189,7 @@ isc_result_t read_client_conf () + /* Requested lease time, used by DHCPv6 (DHCPv4 uses the option cache) + */ + top_level_config.requested_lease = 7200; ++ top_level_config.bootp_broadcast_always = 0; + + group_allocate (&top_level_config.on_receipt, MDL); + if (!top_level_config.on_receipt) +@@ -394,7 +395,8 @@ void read_client_leases () + interface-declaration | + LEASE client-lease-statement | + ALIAS client-lease-statement | +- KEY key-definition */ ++ KEY key-definition | ++ BOOTP_BROADCAST_ALWAYS */ + + void parse_client_statement (cfile, ip, config) + struct parse *cfile; +@@ -817,6 +819,12 @@ void parse_client_statement (cfile, ip, + parse_lease_id_format(cfile); + break; + ++ case BOOTP_BROADCAST_ALWAYS: ++ token = next_token(&val, (unsigned*)0, cfile); ++ config -> bootp_broadcast_always = 1; ++ parse_semi (cfile); ++ return; ++ + + default: + lose = 0; +diff -up dhcp-4.3.4/client/dhclient.8.options dhcp-4.3.4/client/dhclient.8 +--- dhcp-4.3.4/client/dhclient.8.options 2016-03-22 14:16:51.000000000 +0100 ++++ dhcp-4.3.4/client/dhclient.8 2016-04-29 11:59:50.446590077 +0200 +@@ -134,6 +134,33 @@ dhclient - Dynamic Host Configuration Pr .B -w ] [ +.B -B +] +[ -+.B -I ++.B -C +.I dhcp-client-identifier +] +[ @@ -24,18 +58,18 @@ diff -up dhcp-4.2.1b1/client/dhclient.8.man dhcp-4.2.1b1/client/dhclient.8 +.I vendor-class-identifier +] +[ -+.B -R ++.B --request-options +.I request-option-list +] +[ -+.B -timeout ++.B --timeout +.I timeout +] +[ .B -v ] [ -@@ -264,6 +291,69 @@ not to exit when it doesn't find any suc +@@ -289,6 +316,69 @@ not to exit when it doesn't find any suc program can then be used to notify the client when a network interface has been added or removed, so that the client can attempt to configure an IP address on that interface. @@ -46,7 +80,7 @@ diff -up dhcp-4.2.1b1/client/dhclient.8.man dhcp-4.2.1b1/client/dhclient.8 +broadcast replies. + +.TP -+.BI \-I\ ++.BI \-C\ +Specify the dhcp-client-identifier option to send to the DHCP server. + +.TP @@ -73,7 +107,7 @@ diff -up dhcp-4.2.1b1/client/dhclient.8.man dhcp-4.2.1b1/client/dhclient.8 +Specify the vendor-class-identifier option to send to the DHCP server. + +.TP -+.BI \-R\