diff --git a/dhclient-script b/dhclient-script index 322ee6a..05e4205 100644 --- a/dhclient-script +++ b/dhclient-script @@ -275,16 +275,8 @@ is_router_reachable() { if [ ! "${routersubnet}" = "${mysubnet}" ]; then ip -4 route add ${router}/32 dev ${interface} - if [ $? -eq 0 ]; then - if ping -q -c1 -w2 -I ${interface} ${router}; then - return 0 - else - logmessage "DHCP router ${router} is unreachable on DHCP subnet ${mysubnet} router subnet ${routersubnet}" - ip route del ${router}/32 dev ${interface} - return 1 - fi - else - logmessage "failed to create host router for unreachable router ${router} not on subnet ${mysubnet}" + if [ "$?" -ne 0 ]; then + logmessage "failed to create host route for ${router}" return 1 fi fi diff --git a/dhcp-430a1.patch b/dhcp-430a1.patch deleted file mode 100644 index 09f0e79..0000000 --- a/dhcp-430a1.patch +++ /dev/null @@ -1,25 +0,0 @@ -From ed7aa33898bfcf5a37f5b730897611a18f6a929b Mon Sep 17 00:00:00 2001 -From: Jiri Popelka -Date: Tue, 7 Jan 2014 12:13:46 +0100 -Subject: [PATCH] missing comma in ldap.c - ---- - server/ldap.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/server/ldap.c b/server/ldap.c -index efbc874..2994106 100644 ---- a/server/ldap.c -+++ b/server/ldap.c -@@ -628,7 +628,7 @@ ldap_start (void) - options = NULL; - option_state_allocate (&options, MDL); - -- execute_statements_in_scope (NULL, NULL, NULL, NULL, NULL -+ execute_statements_in_scope (NULL, NULL, NULL, NULL, NULL, - options, &global_scope, root_group, - NULL, NULL); - --- -1.8.4.2 - diff --git a/dhcp-errwarn-message.patch b/dhcp-errwarn-message.patch index b4ff4bf..a65c2c2 100644 --- a/dhcp-errwarn-message.patch +++ b/dhcp-errwarn-message.patch @@ -1,30 +1,22 @@ -diff -up dhcp-4.3.0a1/omapip/errwarn.c.errwarn dhcp-4.3.0a1/omapip/errwarn.c ---- dhcp-4.3.0a1/omapip/errwarn.c.errwarn 2012-07-11 22:46:29.000000000 +0200 -+++ dhcp-4.3.0a1/omapip/errwarn.c 2013-12-19 15:09:17.857125042 +0100 -@@ -76,20 +76,13 @@ void log_fatal (const char * fmt, ... ) +diff -up dhcp-4.3.0b1/omapip/errwarn.c.errwarn dhcp-4.3.0b1/omapip/errwarn.c +--- dhcp-4.3.0b1/omapip/errwarn.c.errwarn 2014-01-21 09:31:47.301334249 +0100 ++++ dhcp-4.3.0b1/omapip/errwarn.c 2014-01-21 09:33:20.569039072 +0100 +@@ -76,11 +76,13 @@ void log_fatal (const char * fmt, ... ) + } - #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 ("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 ("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 ("%s", ""); + log_error ("Please report for this software via the Red Hat Bugzilla site:"); + log_error (" http://bugzilla.redhat.com"); log_error ("%s", ""); log_error ("exiting."); - #endif + diff --git a/dhcp-rfc5970-dhcpv6-options-for-network-boot.patch b/dhcp-rfc5970-dhcpv6-options-for-network-boot.patch deleted file mode 100644 index 93c2ece..0000000 --- a/dhcp-rfc5970-dhcpv6-options-for-network-boot.patch +++ /dev/null @@ -1,87 +0,0 @@ -diff -up dhcp-4.3.0a1/common/dhcp-options.5.rfc5970 dhcp-4.3.0a1/common/dhcp-options.5 ---- dhcp-4.3.0a1/common/dhcp-options.5.rfc5970 2013-12-20 13:40:33.758187974 +0100 -+++ dhcp-4.3.0a1/common/dhcp-options.5 2013-12-20 13:42:32.416535547 +0100 -@@ -1770,6 +1770,46 @@ The \fBlq-relay-data\fR option is used i - .PP - The \fBlq-client-link\fR option is used internally by for lease query. - .RE -+.PP -+.B option -+.B dhcp6.bootfile-url -+.I string -+.B ; -+.RS 0.25i -+.PP -+The server sends this option to inform the client about a URL to a -+boot file. Used primarily for UEFI network booting, it contains an RFC3986 -+compliant URI which the client may use to boot an operating system. This option -+is defined in RFC5970 -+.RE -+.PP -+.B option -+.B dhcp6.arch-type -+.I arch-id \fR[\fB,\fR arch-id\fR...] -+.B ; -+.RS 0.25i -+.PP -+A client will send this option to a server so that the server may make decisions -+on what options and addresses to offer the requesting client. The option -+consists of a list of 16 bit unsigned values that represent the architecture of -+the requesting client. These values corespond to the values available to the -+dhcpv4 option architecture-type, as defined in RFC4578, section 2.1. -+This option is defined in RFC5970 -+ .RE -+.PP -+.B option -+.B dhcp6.net-id -+.I uint8 uint8 uint8 -+.B ; -+.RS 0.25i -+.PP -+A client will send this option to a server to inform it about the clients level -+of UNDI support. The option consists of 3 octets (a type, major and minor -+value). Specific meanings of these values are doumented in section 2.2 of -+RFC4578. -+This option is defined in RFC5970 -+.RE -+.PP - .SH ACCESSING DHCPV6 RELAY OPTIONS - .PP - .B v6relay (\fBrelay-number\f, \fBoption\f) -diff -up dhcp-4.3.0a1/common/tables.c.rfc5970 dhcp-4.3.0a1/common/tables.c ---- dhcp-4.3.0a1/common/tables.c.rfc5970 2013-12-20 13:40:33.691188907 +0100 -+++ dhcp-4.3.0a1/common/tables.c 2013-12-20 13:40:33.759187960 +0100 -@@ -463,6 +463,18 @@ static struct option dhcpv6_options[] = - { "lq-relay-data", "6X", &dhcpv6_universe, 47, 1 }, - { "lq-client-link", "6A", &dhcpv6_universe, 48, 1 }, - -+ /* RFC5970 OPTIONS */ -+ -+ { "bootfile-url", "t", &dhcpv6_universe, 59, 1}, -+#if 0 -+ /* Can't implement this until arrays of strings with length "StA" -+ * are implemented -+ */ -+ { "bootfile-param", "StA", &dhcpv6_universe, 60, 1}, -+#endif -+ { "arch-type", "Sa", &dhcpv6_universe, 61, 1}, -+ { "net-id", "BBB", &dhcpv6_universe, 62, 1}, -+ - { NULL, NULL, NULL, 0, 0 } - }; - -diff -up dhcp-4.3.0a1/includes/dhcp6.h.rfc5970 dhcp-4.3.0a1/includes/dhcp6.h ---- dhcp-4.3.0a1/includes/dhcp6.h.rfc5970 2013-12-11 01:25:12.000000000 +0100 -+++ dhcp-4.3.0a1/includes/dhcp6.h 2013-12-20 13:40:33.760187946 +0100 -@@ -76,6 +76,11 @@ - #define D6O_CLT_TIME 46 /* RFC5007 */ - #define D6O_LQ_RELAY_DATA 47 /* RFC5007 */ - #define D6O_LQ_CLIENT_LINK 48 /* RFC5007 */ -+/* 49-58 Not yet assigned */ -+#define D60_BOOT_URL 59 /* RFC5970 */ -+#define D60_BOOT_PARAMS 60 /* RFC5970 */ -+#define D60_CLIENT_ARCH 61 /* RFC5970 */ -+#define D60_CLIENT_NII 62 /* RFC5970 */ - - /* - * Status Codes, from RFC 3315 section 24.4, and RFC 3633, 5007. diff --git a/dhcp.spec b/dhcp.spec index afc02be..0ad389d 100644 --- a/dhcp.spec +++ b/dhcp.spec @@ -9,7 +9,7 @@ #%%global patchver P2 -%global prever a1 +%global prever b1 #%%global VERSION %{version}-%{patchver} #%%global VERSION %{version} @@ -18,7 +18,7 @@ Summary: Dynamic host configuration protocol software Name: dhcp Version: 4.3.0 -Release: 0.3.%{prever}%{?dist} +Release: 0.4.%{prever}%{?dist} # NEVER CHANGE THE EPOCH on this package. The previous maintainer (prior to # dcantrell maintaining the package) made incorrect use of the epoch and # that's why it is at 12 now. It should have never been used, but it was. @@ -69,16 +69,15 @@ Patch29: dhcp-dhclient-decline-onetry.patch Patch30: dhcp-log_perror.patch Patch31: dhcp-getifaddrs.patch Patch32: dhcp-omapi-leak.patch -Patch33: dhcp-rfc5970-dhcpv6-options-for-network-boot.patch -Patch34: dhcp-failOverPeer.patch -Patch35: dhcp-interval.patch -Patch36: dhcp-conflex-do-forward-updates.patch -Patch37: dhcp-dupl-key.patch -Patch38: dhcp-range6.patch -Patch39: dhcp-next-server.patch -Patch40: dhcp-no-subnet-error2info.patch -Patch41: dhcp-ffff-checksum.patch -Patch42: dhcp-430a1.patch +Patch33: dhcp-failOverPeer.patch +Patch34: dhcp-interval.patch +Patch35: dhcp-conflex-do-forward-updates.patch +Patch36: dhcp-dupl-key.patch +Patch37: dhcp-range6.patch +Patch38: dhcp-next-server.patch +Patch39: dhcp-no-subnet-error2info.patch +Patch40: dhcp-ffff-checksum.patch + BuildRequires: autoconf BuildRequires: automake @@ -308,43 +307,36 @@ rm -rf includes/isc-dhcp # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #33990]) %patch32 -p1 -b .leak -# RFC5970 - DHCPv6 Options for Network Boot (#798735) -%patch33 -p1 -b .rfc5970 - # Dhcpd does not correctly follow DhcpFailOverPeerDN (#838400) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #30402]) -%patch34 -p1 -b .failOverPeer +%patch33 -p1 -b .failOverPeer # isc_time_nowplusinterval() is not safe with 64-bit time_t (#662254, #789601) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #28038]) -%patch35 -p1 -b .interval +%patch34 -p1 -b .interval # do-forward-updates statement wasn't recognized (#863646) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #31328]) -%patch36 -p1 -b .forward-updates +%patch35 -p1 -b .forward-updates # multiple key statements in zone definition causes inappropriate error (#873794) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #31892]) -%patch37 -p1 -b .dupl-key +%patch36 -p1 -b .dupl-key # Make sure range6 is correct for subnet6 where it's declared (#902966) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #32453]) -%patch38 -p1 -b .range6 +%patch37 -p1 -b .range6 # Expose next-server DHCPv4 option to dhclient script # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #33098]) -%patch39 -p1 -b .next-server +%patch38 -p1 -b .next-server # 'No subnet declaration for ' should be info, not error. -%patch40 -p1 -b .error2info +%patch39 -p1 -b .error2info # dhcpd rejects the udp packet with checksum=0xffff (#1015997) # (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #25587]) -%patch41 -p1 -b .ffff - -# make 4.3.0a1 build with LDAP support -# (Submitted to dhcp-bugs@isc.org - [ISC-Bugs #35159]) -%patch42 -p1 -b .430a1 +%patch40 -p1 -b .ffff # Update paths in all man pages for page in client/dhclient.conf.5 client/dhclient.leases.5 \ @@ -362,6 +354,8 @@ for page in server/dhcpd.conf.5 server/dhcpd.leases.5 server/dhcpd.8 ; do -e 's|ETCDIR|%{dhcpconfdir}|g' $page done +%{__sed} -i -e 's|/var/db/|%{_localstatedir}/lib/dhcpd/|g' contrib/dhcp-lease-list.pl + %build #libtoolize --copy --force autoreconf --verbose --force --install @@ -566,7 +560,7 @@ done %files %doc server/dhcpd.conf.example server/dhcpd6.conf.example -%doc contrib/ldap/ +%doc contrib/ldap/ contrib/dhcp-lease-list.pl %attr(0750,root,root) %dir %{dhcpconfdir} %attr(0755,dhcpd,dhcpd) %dir %{_localstatedir}/lib/dhcpd %attr(0644,dhcpd,dhcpd) %verify(mode) %config(noreplace) %{_localstatedir}/lib/dhcpd/dhcpd.leases @@ -630,6 +624,11 @@ done %changelog +* Tue Jan 21 2014 Jiri Popelka - 12:4.3.0-0.4.b1 +- 4.3.0b1 +- ship dhcp-lease-list.pl +- dhclient-script: don't ping router (#1055181) + * Mon Jan 13 2014 Jiri Popelka - 12:4.3.0-0.3.a1 - update address lifetimes on RENEW/RENEW6 (#1032809)