diff --git a/debian/changelog b/debian/changelog index 1bd1d7b4bbff33a8bf5e8c2319bea23047bd7dab..3c6411a1111b8f67dbd76362fc825493def7fa69 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,16 @@ +isc-dhcp (4.3.5-2) unstable; urgency=medium + + * Fix new upstream spelling errors. + * Add policykit-1 dependency to the server package (closes: #816325). + * Parse IPv6 server process id from the correct file (closes: #841766). + * Initialize all local variables in dhclient scripts (closes: #849100). + * Pass random device to configure when cross building (closes: #838382). + - Thanks to Helmut Grohne. + * Don't wait for a reply that will never come when releasing an ipv6 address + (closes: #769189). + + -- Michael Gilbert <mgilbert@debian.org> Sun, 08 Jan 2017 23:11:52 +0000 + isc-dhcp (4.3.5-1) unstable; urgency=medium * New upstream release. diff --git a/debian/control b/debian/control index fdaba2334f2a347210b60a0b38333d11bff4fb07..5191cb001d0edfdc3dfc21f3b12d422d713517f1 100644 --- a/debian/control +++ b/debian/control @@ -26,6 +26,7 @@ Depends: ${shlibs:Depends}, debianutils (>= 2.8.2), lsb-base, + policykit-1, Recommends: isc-dhcp-common, policycoreutils, diff --git a/debian/dhclient-script.linux b/debian/dhclient-script.linux index 4eabdd5737287ca5266c6573552159ba558383df..6670c69f30e7523b62d8e443e8951c8462278b3a 100644 --- a/debian/dhclient-script.linux +++ b/debian/dhclient-script.linux @@ -89,10 +89,8 @@ make_resolv_conf() { # set host name set_hostname() { - local current_hostname - if [ -n "$new_host_name" ]; then - current_hostname=$(hostname) + local current_hostname=$(hostname) # current host name is empty, '(none)' or 'localhost' or differs from new one from DHCP if [ -z "$current_hostname" ] || @@ -108,9 +106,8 @@ set_hostname() { # run given script run_hook() { - local script - local exit_status - script="$1" + local script="$1" + local exit_status=0 if [ -f $script ]; then . $script @@ -141,7 +138,7 @@ run_hookdir() { # Must be used on exit. Invokes the local dhcp client exit hooks, if any. exit_with_hooks() { - exit_status=$1 + local exit_status=$1 # Source the documented exit-hook script, if it exists if ! run_hook /etc/dhcp/dhclient-exit-hooks; then diff --git a/debian/dhclient-script.linux.udeb b/debian/dhclient-script.linux.udeb index d17cf0faf453647f5ff9101c79c01bdb0ff1909b..8fea9df4f9a032787b9a04b4528b8189fcf5749c 100644 --- a/debian/dhclient-script.linux.udeb +++ b/debian/dhclient-script.linux.udeb @@ -55,10 +55,8 @@ make_resolv_conf() { # set host name set_hostname() { - local current_hostname - if [ -n "$new_host_name" ]; then - current_hostname=$(cat /proc/sys/kernel/hostname) + local current_hostname=$(cat /proc/sys/kernel/hostname) if [ -z "$current_hostname" ] || [ "$current_hostname" = "(none)" ]; then echo "$new_host_name" > /proc/sys/kernel/hostname diff --git a/debian/isc-dhcp-server.init.d b/debian/isc-dhcp-server.init.d index 083bb244d47f10c1c629f10eae093e7b0d101463..07db41999ab8a338af8b1b7164871c52786368a1 100644 --- a/debian/isc-dhcp-server.init.d +++ b/debian/isc-dhcp-server.init.d @@ -47,7 +47,7 @@ if [ -z "$DHCPDv4_PID" ]; then DHCPDv4_PID=$(sed -n -e 's/^[ \t]*pid-file-name[ \t]*"\(.*\)"[ \t]*;.*$/\1/p' < "$DHCPDv4_CONF" 2>/dev/null | head -n 1) fi if [ -z "$DHCPDv6_PID" ]; then - DHCPDv6_PID=$(sed -n -e 's/^[ \t]*pid-file-name[ \t]*"\(.*\)"[ \t]*;.*$/\1/p' < "$DHCPDv6_CONF" 2>/dev/null | head -n 1) + DHCPDv6_PID=$(sed -n -e 's/^[ \t]*dhcpv6-pid-file-name[ \t]*"\(.*\)"[ \t]*;.*$/\1/p' < "$DHCPDv6_CONF" 2>/dev/null | head -n 1) fi DHCPDv4_PID="${DHCPDv4_PID:-/var/run/dhcpd.pid}" DHCPDv6_PID="${DHCPDv6_PID:-/var/run/dhcpd6.pid}" diff --git a/debian/patches/dhclient-release.patch b/debian/patches/dhclient-release.patch new file mode 100644 index 0000000000000000000000000000000000000000..8dfd116b62ca300adcfc700f1ec63047c500de81 --- /dev/null +++ b/debian/patches/dhclient-release.patch @@ -0,0 +1,15 @@ +description: don't wait for a reply that will never come when releasing an ipv6 address +author: Michael Gilbert <mgilbert@debian.org> +bug-debian: http://bugs.debian.org/769189 + +--- a/client/dhclient.c ++++ b/client/dhclient.c +@@ -802,7 +802,7 @@ main(int argc, char **argv) { + if (exit_mode) + return 0; + if (release_mode) { +-#ifndef DHCPv6 ++#if 1 + return 0; + #else + if ((local_family == AF_INET6) || dhcpv4_over_dhcpv6) { diff --git a/debian/patches/dhclient-script-exit-status.patch b/debian/patches/dhclient-script-exit-status.patch index b49c233d1f30221c73ff3088430288b78e407bb0..eafe3831363059b4b97d1260a87219937aaf2cb8 100644 --- a/debian/patches/dhclient-script-exit-status.patch +++ b/debian/patches/dhclient-script-exit-status.patch @@ -1,4 +1,6 @@ -description: check that exit status is 2 +description: send DHCPDECLINE message only when dhclient script specifically returns exit status 2 indicating that the client should do so +author: Matt Zimmerman <mdz@debian.org> +origin: applied originally in 2004 to the debian dhcp3 package (version 3.0+3.0.1rc13-1) --- a/client/dhclient.c +++ b/client/dhclient.c diff --git a/debian/patches/fix-spelling-error.patch b/debian/patches/fix-spelling-error.patch deleted file mode 100644 index 9ba986ed2080739ca009ae791e28abd0a231609c..0000000000000000000000000000000000000000 --- a/debian/patches/fix-spelling-error.patch +++ /dev/null @@ -1,45 +0,0 @@ -Description: fix spelling mistakes -Author: Michael Gilbert <mgilbert@debian.org> - ---- a/common/parse.c -+++ b/common/parse.c -@@ -1278,7 +1278,7 @@ parse_option_name (cfile, allocate, know - option_reference(opt, option, MDL); - } else - log_info("option %s has been redefined as option %s. " -- "Please update your configs if neccessary.", -+ "Please update your configs if necessary.", - val, option->name); - /* If we've been told to allocate, that means that this - * (might) be an option code definition, so we'll create -@@ -2398,7 +2398,7 @@ int parse_executable_statement (result, - - token = next_token (&val, (unsigned *)0, cfile); - if (token != RBRACE) { -- parse_warn (cfile, "expecting rigt brace."); -+ parse_warn (cfile, "expecting right brace."); - goto badx; - } - } else { ---- a/client/dhclient.8 -+++ b/client/dhclient.8 -@@ -337,7 +337,7 @@ a destination for DHCP protocol messages - has acquired an IP address. Normally, - .B dhclient - transmits these messages to 255.255.255.255 (the IP limited broadcast --address). Overriding this is mostly useful for debugging purposes. This -+address). Overridding this is mostly useful for debugging purposes. This - feature is not supported in DHCPv6 (\fB-6\fR) mode. - .TP - .BI \-g \ relay ---- a/server/dhcpd.conf.5 -+++ b/server/dhcpd.conf.5 -@@ -2663,7 +2663,7 @@ pool usage passes that level. After tha - output until the pool usage falls below the low threshold. If the low - threshold is not given, it default to a value of zero. - .PP --A special case occurs when the low threshold is set to be higer than -+A special case occurs when the low threshold is set to be higher than - the high threshold. In this case, a message will be generated each time - a lease is acknowledged when the pool usage is above the high threshold. - .PP diff --git a/debian/patches/fix-spelling.patch b/debian/patches/fix-spelling.patch new file mode 100644 index 0000000000000000000000000000000000000000..d3893aea61fc104ec3c7614fc47237d3fcfc3659 --- /dev/null +++ b/debian/patches/fix-spelling.patch @@ -0,0 +1,67 @@ +Description: fix spelling mistakes +Author: Michael Gilbert <mgilbert@debian.org> + +--- a/common/parse.c ++++ b/common/parse.c +@@ -1278,7 +1278,7 @@ parse_option_name (cfile, allocate, know + option_reference(opt, option, MDL); + } else + log_info("option %s has been redefined as option %s. " +- "Please update your configs if neccessary.", ++ "Please update your configs if necessary.", + val, option->name); + /* If we've been told to allocate, that means that this + * (might) be an option code definition, so we'll create +@@ -2398,7 +2398,7 @@ int parse_executable_statement (result, + + token = next_token (&val, (unsigned *)0, cfile); + if (token != RBRACE) { +- parse_warn (cfile, "expecting rigt brace."); ++ parse_warn (cfile, "expecting right brace."); + goto badx; + } + } else { +--- a/server/dhcpd.conf.5 ++++ b/server/dhcpd.conf.5 +@@ -2663,7 +2663,7 @@ pool usage passes that level. After tha + output until the pool usage falls below the low threshold. If the low + threshold is not given, it default to a value of zero. + .PP +-A special case occurs when the low threshold is set to be higer than ++A special case occurs when the low threshold is set to be higher than + the high threshold. In this case, a message will be generated each time + a lease is acknowledged when the pool usage is above the high threshold. + .PP +@@ -2836,7 +2836,7 @@ response \fIis\fR heard, the lease is ab + not respond to the client. The lease will remain abandoned for a minimum + of abandon-lease-time seconds. + .PP +-If a there are no free addressses but there are abandoned IP addresses, the ++If a there are no free addresses but there are abandoned IP addresses, the + DHCP server will attempt to reclaim an abandoned IP address regardless of the + value of abandon-lease-time. + .PP +--- a/client/dhclient.c ++++ b/client/dhclient.c +@@ -121,10 +121,10 @@ static void dhclient_ddns_cb_free(dhcp_d + * the description of the command line. The arguments provide + * a way for the caller to request more specific information about + * the error be printed as well. Mostly this will be that some +- * comamnd doesn't include its argument. ++ * command doesn't include its argument. + * + * \param sfmt - The basic string and format for the specific error +- * \param sarg - Generally the offending argument from the comamnd line. ++ * \param sarg - Generally the offending argument from the command line. + * + * \return Nothing + */ +@@ -434,7 +434,7 @@ main(int argc, char **argv) { + } else if (argv[i][0] == '-') { + usage("Unknown command: %s", argv[i]); + } else if (interfaces_requested < 0) { +- usage("No interfaces comamnd -n and " ++ usage("No interfaces command -n and " + " requested interface %s", argv[i]); + } else { + struct interface_info *tmp = NULL; diff --git a/debian/patches/series b/debian/patches/series index 44519a4d749086ba8327b3943da9c91901aa45a6..fc67da980eace0b85b7a8031c2105766c34f4d56 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -3,6 +3,8 @@ dhclient-exit-hook.patch dhclient-dividebyzero.patch dhclient-64bit-time.patch dhclient-more-detail.patch +dhclient-release.patch + dhcrelay-listen.patch dhcpd-conf.patch @@ -10,7 +12,7 @@ dhcpd-conf.patch fix-exit-hook-manpage.patch fix-manpage-macro.patch fix-manpage-error.patch -fix-spelling-error.patch +fix-spelling.patch disable-nsupdate.patch diff --git a/debian/rules b/debian/rules index b8358fcbef51ab7f462a48237b434f1134cf6170..48b04c8f4ac6403c9c0e5e4c886aa6812b01ddb8 100755 --- a/debian/rules +++ b/debian/rules @@ -27,7 +27,7 @@ CONFFLAGS=--prefix=/usr --enable-log-pid --enable-paranoia # cross-architecture building ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) -CONFFLAGS+=--build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) +CONFFLAGS+=--build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) --with-random=/dev/random endif # hurd support