Dynamic host configuration protocol software
Go to file
2012-11-16 15:32:06 +01:00
.gitignore 4.2.4-P2: fix for CVE-2012-3955 (#856770) 2012-09-13 14:41:33 +02:00
11-dhclient Fix 11-dhclient to export variables (#702735) 2011-05-09 14:32:51 +02:00
12-dhcpd SystemD unit files don't use Environment files any more (#850558) 2012-08-24 13:49:51 +02:00
56dhclient 56dhclient: ifcfg file was not sourced (#742482) 2011-09-30 15:59:33 +02:00
dhclient-script dhclient-script: calling dhclient-up-hooks after setting up route, gateways 2012-08-20 15:41:22 +02:00
dhcp-4.2.0-add_timeout_when_NULL.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-default-requested-options.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-dhclient-decline-backoff.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-errwarn-message.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-garbage-chars.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-honor-expired.patch Polished patches according to results from static analysis of code. 2011-03-25 16:27:50 +01:00
dhcp-4.2.0-logpid.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-missing-ipv6-not-fatal.patch - 4.2.0: includes ldap-for-dhcp 2010-07-21 16:56:35 +00:00
dhcp-4.2.0-release-by-ifup.patch Polished patches according to results from static analysis of code. 2011-03-25 16:27:50 +01:00
dhcp-4.2.1-manpages.patch dhclient-usage.patch+part of manpages.patch merged with dhclient-options.patch 2012-09-26 10:46:55 +02:00
dhcp-4.2.1-retransmission.patch 4.2.1b1: fix for CVE-2011-0413 (#672996) 2011-01-28 09:21:10 +01:00
dhcp-4.2.1-sendDecline.patch Removed upstream-merged IFNAMSIZ.patch 2011-06-17 14:39:28 +02:00
dhcp-4.2.2-capability.patch change ownership of /var/lib/dhcpd/ to dhcpd:dhcpd (#744292) 2011-10-09 20:28:19 +02:00
dhcp-4.2.2-CLOEXEC.patch don't build libdst (#849166) 2012-08-17 17:01:57 +02:00
dhcp-4.2.2-gpxe-cid.patch gpxe-cid.patch: don't get hw address twice 2012-08-24 14:27:58 +02:00
dhcp-4.2.2-remove-bind.patch added test.sh to run upstream shipped tests. 2011-08-11 18:14:27 +02:00
dhcp-4.2.2-sharedlib.patch don't build libdst (#849166) 2012-08-17 17:01:57 +02:00
dhcp-4.2.2-xen-checksum.patch 4.2.2b1 2011-07-01 14:43:04 +02:00
dhcp-4.2.3-dhclient-decline-onetry.patch dhclient: Don't retry on DECLINE when -1 option used 2011-11-24 17:26:59 +01:00
dhcp-4.2.3-P2-log_perror.patch don't send log messages to the standard error descriptor by default (#790387) 2012-02-22 16:17:52 +01:00
dhcp-4.2.3-P2-rfc5970-dhcpv6-options-for-network-boot.patch RFC5970 - DHCPv6 Options for Network Boot (#798735) 2012-03-21 19:43:05 +01:00
dhcp-4.2.4-64_bit_lease_parse.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-dhclient-options.patch dhclient-usage.patch+part of manpages.patch merged with dhclient-options.patch 2012-09-26 10:46:55 +02:00
dhcp-4.2.4-failOverPeer.patch Dhcpd does not correctly follow DhcpFailOverPeerDN (#838400) 2012-07-23 13:09:27 +02:00
dhcp-4.2.4-getifaddrs.patch getifaddrs.patch: use HAVE_SA_LEN macro 2012-05-25 18:28:09 +02:00
dhcp-4.2.4-improved-xid.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-lpf-ib.patch gpxe-cid.patch: don't get hw address twice 2012-08-24 14:27:58 +02:00
dhcp-4.2.4-P1-dhclient6-leases_semicolon_expected.patch Dhclient does not correctly parse zero-length options in dhclient6.leases (#633318) 2012-07-25 16:19:41 +02:00
dhcp-4.2.4-P1-interval.patch isc_time_nowplusinterval() is not safe with 64-bit time_t (#662254, #789601) 2012-07-27 10:13:48 +02:00
dhcp-4.2.4-P1-remove-dst.patch don't build libdst (#849166) 2012-08-17 17:01:57 +02:00
dhcp-4.2.4-P2-conflex-do-forward-updates.patch do-forward-updates statement wasn't recognized (#863646) 2012-10-09 14:27:16 +02:00
dhcp-4.2.4-P2-dupl-key.patch multiple key statements in zone definition causes inappropriate error (#873794) 2012-11-16 15:32:06 +01:00
dhcp-4.2.4-paranoia.patch dhcpd needs to chown leases file created before de-rooting itself (#866714) 2012-10-17 10:46:22 +02:00
dhcp-4.2.4-paths.patch fix path to dhcpd6.leases in dhcpd6.conf.sample (#870458) 2012-10-26 18:14:44 +02:00
dhcp-4.2.4-PPP.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-rfc3442-classless-static-routes.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-send_release.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-systemtap.patch don't build libdst (#849166) 2012-08-17 17:01:57 +02:00
dhcp-4.2.4-unicast-bootp.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp-4.2.4-UseMulticast.patch 4.2.4b1: noprefixavail.patch merged upstream 2012-04-17 11:46:32 +02:00
dhcp.spec multiple key statements in zone definition causes inappropriate error (#873794) 2012-11-16 15:32:06 +01:00
dhcpd6.service SystemD unit files don't use Environment files any more (#850558) 2012-08-24 13:49:51 +02:00
dhcpd.service SystemD unit files don't use Environment files any more (#850558) 2012-08-24 13:49:51 +02:00
dhcrelay.service SystemD unit files don't use Environment files any more (#850558) 2012-08-24 13:49:51 +02:00
README.dhclient.d move dhclient & dhclient-script from /sbin to /usr/sbin 2012-04-02 12:05:14 +02:00
sources 4.2.4-P2: fix for CVE-2012-3955 (#856770) 2012-09-13 14:41:33 +02:00
tap_all.stp SystemTap support: spec file change, some dummy probes, tapset, simple script 2011-09-21 15:40:15 +02:00
test.sh Add test.sh (forgotten in commit: 5c34626) 2011-09-21 15:38:55 +02:00

The /etc/dhcp/dhclient.d directory allows other packages and system
administrators to create application-specific option handlers for dhclient.

When dhclient is run, any option listed in the dhcp-options(5) man page can
be requested.  dhclient-script does not handle every option available
because doing so would make the script unmaintainable as the components
using those options might change over time.  The knowledge of how to handle
those options should be under the responsibility of the package maintainer
for that component (e.g., NTP options belong in a handler in the ntp
package).

To make maintenance easier, application specific DHCP options can be handled
by creating a script with two functions and placing it in /etc/dhcp/dhclient.d

The script must follow a specific form:

(1) The script must be named NAME.sh.  NAME can be anything, but it makes
    sense to name it for the service it handles.  e.g., ntp.sh

(2) The script must provide a NAME_config() function to read the options and
    do whatever it takes to put those options in place.

(3) The script must provide a NAME_restore() function to restore original
    configuration state when dhclient stops.

(4) The script must be 'chmod +x' or dhclient-script will ignore it.

The scripts execute in the same environment as dhclient-script.  That means
all of the functions and variables available to it are available to your
NAME.sh script.  Things of note:

    ${SAVEDIR} is where original configuration files are saved.  Save your
    original configuration files here before you take the DHCP provided
    values and generate new files.

    Variables set in /etc/sysconfig/network, /etc/sysconfig/networking/network,
    and /etc/sysconfig/network-scripts/ifcfg-$interface are available to
    you.

See the scripts in /etc/dhcp/dhclient.d for examples.

NOTE:  Do not use functions defined in /usr/sbin/dhclient-script.  Consider
dhclient-script a black box.  This script may change over time, so the
dhclient.d scripts should not be using functions defined in it.

-- 
David Cantrell <dcantrell@redhat.com>