--- dhcp-4.3.6/client/clparse.c +++ dhcp-4.3.6/client/clparse.c @@ -31,7 +31,7 @@ struct client_config top_level_config; -#define NUM_DEFAULT_REQUESTED_OPTS 9 +#define NUM_DEFAULT_REQUESTED_OPTS 10 /* There can be 2 extra requested options for DHCPv4-over-DHCPv6. */ struct option *default_requested_options[NUM_DEFAULT_REQUESTED_OPTS + 2 + 1]; @@ -107,15 +107,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 " --- dhcp-4.3.6/client/scripts/bsdos +++ dhcp-4.3.6/client/scripts/bsdos @@ -36,6 +36,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. --- dhcp-4.3.6/client/scripts/freebsd +++ dhcp-4.3.6/client/scripts/freebsd @@ -80,6 +80,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. --- dhcp-4.3.6/client/scripts/linux +++ dhcp-4.3.6/client/scripts/linux @@ -106,6 +106,27 @@ fi mv -f $new_resolv_conf /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 } # set host name --- dhcp-4.3.6/client/scripts/netbsd +++ dhcp-4.3.6/client/scripts/netbsd @@ -36,6 +36,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. --- dhcp-4.3.6/client/scripts/openbsd +++ dhcp-4.3.6/client/scripts/openbsd @@ -36,6 +36,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. --- dhcp-4.3.6/client/scripts/solaris +++ dhcp-4.3.6/client/scripts/solaris @@ -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.