diff -Nru isc-dhcp-4.3.3/debian/changelog isc-dhcp-4.3.3/debian/changelog --- isc-dhcp-4.3.3/debian/changelog 2016-10-31 18:32:14.000000000 +0000 +++ isc-dhcp-4.3.3/debian/changelog 2016-12-09 17:45:11.000000000 +0000 @@ -1,3 +1,21 @@ +isc-dhcp (4.3.3-5ubuntu12.6) xenial; urgency=medium + + * debian/initramfs/lib/etc/dhcp/dhclient-enter-hooks.d/config: clean up + script to remove IPv4 bits that would never be called; since for this SRU + we only do IPv6. (LP: #1621507) + + -- Mathieu Trudel-Lapierre Thu, 08 Dec 2016 17:43:34 +0100 + +isc-dhcp (4.3.3-5ubuntu12.5) xenial; urgency=medium + + * debian/initramfs/lib/etc/dhcp/dhclient-enter-hooks.d/config: fix script to + not write to /run/net-$iface.conf when dealing with IPv6; which should only + write to a /run/net6-$iface.conf file. (LP: #1621507) + * debian/README.Debian: document what this config script is and why a hook is + shipped for the initramfs. + + -- Mathieu Trudel-Lapierre Fri, 04 Nov 2016 10:57:07 -0600 + isc-dhcp (4.3.3-5ubuntu12.4) xenial; urgency=medium * ipv6: wait for duplicate address detection to finish (LP: #1633479). diff -Nru isc-dhcp-4.3.3/debian/initramfs-tools/lib/etc/dhcp/dhclient-enter-hooks.d/config isc-dhcp-4.3.3/debian/initramfs-tools/lib/etc/dhcp/dhclient-enter-hooks.d/config --- isc-dhcp-4.3.3/debian/initramfs-tools/lib/etc/dhcp/dhclient-enter-hooks.d/config 2016-10-31 18:32:14.000000000 +0000 +++ isc-dhcp-4.3.3/debian/initramfs-tools/lib/etc/dhcp/dhclient-enter-hooks.d/config 2016-12-09 17:45:11.000000000 +0000 @@ -1,56 +1,15 @@ #!/bin/sh -echo "DEVICE=$interface" >> /run/net-$interface.conf - case "$reason" in -BOUND) - echo "PROTO=dhcp" >> /run/net-$interface.conf - echo "IPV4PROTO=dhcp" >> /run/net-$interface.conf - echo "IPV4ADDR=$new_ip_address" >> /run/net-$interface.conf - echo "IPV4NETMASK=$new_subnet_mask" >> /run/net-$interface.conf - echo "IPV4BROADCAST=$new_broadcast_address" >> /run/net-$interface.conf - echo "IPV4GATEWAY=$new_routers" >> /run/net-$interface.conf - echo "IPV4DNS0=$new_domain_name_servers" >> /run/net-$interface.conf - echo "ROOTSERVER=$new_routers" >> /run/net-$interface.conf - if [ -n "$new_domain_search"]; then - echo "DOMAINSEARCH=$new_domain_search" >> /run/net-$interface.conf - fi - ;; BOUND6) - echo "IPV6PROTO=dhcp6" >> /run/net-$interface.conf - echo "IPV6ADDR=$new_ip6_address" >> /run/net-$interface.conf - echo "IPV6NETMASK=$new_ip6_prefixlen" >> /run/net-$interface.conf - echo "IPV6DNS0=$new_dhcp6_name_servers" >> /run/net-$interface.conf - if [ -n "$new_dhcp6_domain_search"]; then - echo "IPV6DOMAINSEARCH=$new_dhcp6_domain_search" >> /run/net-$interface.conf + echo "DEVICE6=$interface" > /run/net6-$interface.conf + echo "IPV6PROTO=dhcp6" >> /run/net6-$interface.conf + echo "IPV6ADDR=$new_ip6_address" >> /run/net6-$interface.conf + echo "IPV6NETMASK=$new_ip6_prefixlen" >> /run/net6-$interface.conf + echo "IPV6DNS0=$new_dhcp6_name_servers" >> /run/net6-$interface.conf + if [ -n "$new_dhcp6_domain_search" ]; then + echo "IPV6DOMAINSEARCH=$new_dhcp6_domain_search" >> /run/net6-$interface.conf fi ;; esac -if [ -n "$host_name"]; then - echo "HOSTNAME=$new_host_name" >> /run/net-$interface.conf -fi -if [ -n "$domain_name"]; then - echo "DNSDOMAIN=$new_domain_name" >> /run/net-$interface.conf -fi - -for prefix in '' 'cur_' 'new_' 'old_'; do - # loop over the DHCP variables passed to dhclient-script - for basevar in reason interface medium alias_ip_address \ - ip_address host_name network_number subnet_mask \ - broadcast_address routers static_routes \ - rfc3442_classless_static_routes \ - domain_name domain_search domain_name_servers \ - netbios_name_servers netbios_scope \ - ntp_servers \ - ip6_address ip6_prefix ip6_prefixlen \ - dhcp6_domain_search dhcp6_name_servers ; do - var="${prefix}${basevar}" - eval "content=\$$var" - - # show only variables with values set - if [ -n "${content}" ]; then - echo "$var='${content}'" >> /run/net-$interface.conf - fi - done -done diff -Nru isc-dhcp-4.3.3/debian/README.Debian isc-dhcp-4.3.3/debian/README.Debian --- isc-dhcp-4.3.3/debian/README.Debian 2016-10-31 18:32:14.000000000 +0000 +++ isc-dhcp-4.3.3/debian/README.Debian 2016-12-09 17:45:11.000000000 +0000 @@ -34,3 +34,31 @@ profile. Please see https://wiki.ubuntu.com/DebuggingApparmor before filing a bug against this software. + +initramfs-tools hook and supplementary files +-------------------------------------------- + +isc-dhcp-client ships a hook for initramfs-tools to install dhclient in the +initramfs, so that systems may bring up IPv4 and IPv6 networking in early +userspace, in order to mount remote filesystems, etc. + +The included "config" script for dhclient-enter-hooks shipping in isc-dhcp- +client for the initramfs is based off the existing "debug" script. The +following variables are made available for scripts in the initramfs: + +It writes out /run/net-$iface.conf and /run/net6-$iface.conf in a format that +is compatible with the old ipconfig format: + + - DEVICE/DEVICE6: the network interface configured. + - PROTO/IPV4PROTO/IPV6PROTO: configuration protocol used (usually DHCP) + - IPV4ADDR/IPV6ADDR: IP address + - IPV4NETMASK/IPV6NETMASK: netmask + - IPV4GATEWAY/IPV6GATEWAY: network gateway + - IPV4DNS0/IPV6DNS0: domain name servers + - ROOTSERVER: next/filesystem server for remote root (IPv4 only) + - HOSTNAME: system hostname + - DNSDOMAIN: DNS domain + - DOMAINSEARCH/IPV6DOMAINSEARCH: search domains + +See http://git.kernel.org/cgit/libs/klibc/klibc.git/tree/usr/kinit/ipconfig/README.ipconfig +