- Issued:
- 2012-06-20
- Updated:
- 2012-06-20
RHBA-2012:0793 - dhcp bug fix and enhancement update
Synopsis
dhcp bug fix and enhancement update
Type/Severity
Bug Fix Advisory (none)
Topic
Updated dhcp packages that fix several bugs and add two enhancements are now available for Red Hat Enterprise Linux 6.
Description
The dhcp package provides software to support the Dynamic Host Configuration Protocol (DHCP) and DHCPv6 protocol. The Dynamic Host Configuration Protocol (DHCP) is a protocol that allows individual devices on an IP network to obtain their own network configuration information, including an IP address, a subnet mask, and a broadcast address.
This update fixes the following bugs:
-
Previously, when dhclient was unsuccessful in obtaining or renewing an address, it restored the resolv.conf file from backup even when there were other dhclient processes running. Consequently, network traffic could be unnecessarily interrupted. The bug in dhclient-script has been fixed and dhclient now restores resolv.conf from backup only if there are no other dhclient processes running. (BZ#656339)
-
A bug caused an infinite loop in a dhcpd process when dhcpd tried to parse the slp-service-scope option in dhcpd.conf. As a consequence, dhcpd entered an infinite loop on startup consuming 100% of the CPU cycles. This update improves the code and the problem no longer occurs. (BZ#747017)
-
Previously, the DHCPv4 client did not check whether the address received in a DHCPACK message was already in use. As a consequence, it was possible that after a reboot two clients could have the same, conflicting, IP address. With this update, the bug has been fixed and DHCPv4 client now performs duplicate address detection (DAD) and sends a DHCPDECLINE message if the address received in DHCPACK is already in use, as per RFC 2131. (BZ#752116)
-
When dhclient is invoked with the "-1" command-line option, it should try to get a lease once and on failure exit with status code 2. Previously, when dhclient was invoked with the "-1" command-line option, and then issued a DHCPDECLINE message, it continued in trying to obtain a lease. With this update, the dhclient code has been fixed. As a result, dhclient stops trying to obtain a lease and exits after sending DHCPDECLINE when started with the "-1" option. (BZ#756759)
-
Previously, dhclient kept sending DHCPDISCOVER messages in an infinite loop when started with the "-timeout" option having a value of 3 or less (seconds). With this update, the problem has been fixed and the "-timeout" option works as expected with all values. (BZ#789719)
This update also provides the following enhancements:
-
The DHCP server daemon now uses portreserve for reserving ports 647 and 847 to prevent other programs from occupying them. (BZ#790686)
-
All DHCPv6 options defined in RFC5970, except for the Boot File Parameters Option, were implemented. This allows the DHCPv6 server to pass boot file URLs back to IPv6-based netbooting clients (UEFI) based on the system's architecture. (BZ#798735)
Users are advised to upgrade to these updated dhcp packages, which fix these bugs and add these enhancements.
Solution
Before applying this update, make sure all previously-released errata relevant to your system have been applied.
This update is available via the Red Hat Network. Details on how to use the Red Hat Network to apply this update are available at https://access.redhat.com/knowledge/articles/11258
Affected Products
| Product | Version | Arch |
|---|---|---|
| Red Hat Enterprise Linux for Scientific Computing | 6 | x86_64 |
| Red Hat Enterprise Linux for Power, big endian | 6 | ppc64 |
| Red Hat Enterprise Linux for IBM z Systems | 6 | s390x |
| Red Hat Enterprise Linux Workstation | 6 | x86_64 |
| Red Hat Enterprise Linux Workstation | 6 | i386 |
| Red Hat Enterprise Linux Server | 6 | x86_64 |
| Red Hat Enterprise Linux Server | 6 | i386 |
| Red Hat Enterprise Linux Server from RHUI | 6 | x86_64 |
| Red Hat Enterprise Linux Server from RHUI | 6 | i386 |
| Red Hat Enterprise Linux Server - Retired Extended Life Cycle Support | 6 | x86_64 |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support | 6 | x86_64 |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support | 6 | i386 |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support Extension | 6 | x86_64 |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support Extension | 6 | i386 |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support Extension (for IBM z Systems) | 6 | s390x |
| Red Hat Enterprise Linux Server - Extended Life Cycle Support (for IBM z Systems) | 6 | s390x |
| Red Hat Enterprise Linux Desktop | 6 | x86_64 |
| Red Hat Enterprise Linux Desktop | 6 | i386 |
Updated Packages
- dhcp-devel-4.1.1-31.P1.el6.x86_64.rpm
- dhcp-4.1.1-31.P1.el6.x86_64.rpm
- dhcp-common-4.1.1-31.P1.el6.x86_64.rpm
- dhclient-4.1.1-31.P1.el6.i686.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.i686.rpm
- dhcp-devel-4.1.1-31.P1.el6.s390.rpm
- dhclient-4.1.1-31.P1.el6.s390x.rpm
- dhcp-4.1.1-31.P1.el6.ppc64.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.ppc.rpm
- dhcp-4.1.1-31.P1.el6.src.rpm
- dhcp-common-4.1.1-31.P1.el6.s390x.rpm
- dhcp-devel-4.1.1-31.P1.el6.s390x.rpm
- dhcp-4.1.1-31.P1.el6.i686.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.x86_64.rpm
- dhcp-devel-4.1.1-31.P1.el6.i686.rpm
- dhcp-devel-4.1.1-31.P1.el6.ppc64.rpm
- dhclient-4.1.1-31.P1.el6.ppc64.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.ppc64.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.s390.rpm
- dhcp-4.1.1-31.P1.el6.s390x.rpm
- dhclient-4.1.1-31.P1.el6.x86_64.rpm
- dhcp-devel-4.1.1-31.P1.el6.ppc.rpm
- dhcp-common-4.1.1-31.P1.el6.ppc64.rpm
- dhcp-debuginfo-4.1.1-31.P1.el6.s390x.rpm
- dhcp-common-4.1.1-31.P1.el6.i686.rpm
Fixes
- This content is not included.BZ - 752116
- This content is not included.BZ - 756759
- This content is not included.BZ - 789719
- This content is not included.BZ - 790686
- This content is not included.BZ - 798735
CVEs
(none)
References
(none)
Additional information
- The Red Hat security contact is This content is not included.secalert@redhat.com. More contact details at https://access.redhat.com/security/team/contact/.
- Offline Security Data data is available for integration with other systems. See Offline Security Data API to get started.