Bug 863936
Summary: | dhcrelay segfaults when packet is received over interface without any IPv4 address assigned | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Stefan Assmann <sassmann> | ||||
Component: | dhcp | Assignee: | Jiri Popelka <jpopelka> | ||||
Status: | CLOSED ERRATA | QA Contact: | Ladislav Jozsa <ljozsa> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 6.3 | CC: | jpopelka, ljozsa, lnovich, michal.bruncko, mtessun, ovasik | ||||
Target Milestone: | rc | Keywords: | Patch | ||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | dhcp-4.1.1-35.P1.el6 | Doc Type: | Bug Fix | ||||
Doc Text: |
Cause:
DHCPv4 relay agent (dhcrelay) received a packet over interface without any IPv4 address assigned.
Consequence:
Relay agent crashed.
Fix:
Relay agent now checks whether the interface has address assigned prior to further processing of received packet.
Result:
Relay agent no longer crashes.
|
Story Points: | --- | ||||
Clone Of: | Environment: | ||||||
Last Closed: | 2013-11-21 07:43:16 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 947775 | ||||||
Attachments: |
|
Description
Stefan Assmann
2012-10-08 06:34:48 UTC
I've compiled dhcp-4.2.4-P2 and tried again. Here's the output Starting program: /usr/sbin/dhcrelay -d -i eth0 -i eth1 10.16.64.14 Internet Systems Consortium DHCP Relay Agent 4.2.4-P2 Copyright 2004-2012 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Listening on LPF/eth1/34:40:b5:b9:5f:9c Sending on LPF/eth1/34:40:b5:b9:5f:9c Listening on LPF/eth0/34:40:b5:b9:5f:9b Sending on LPF/eth0/34:40:b5:b9:5f:9b Sending on Socket/fallback Forwarded BOOTREQUEST for 00:17:ef:dd:21:00 to 10.16.64.14 Forwarded BOOTREPLY for 00:17:ef:dd:21:00 to 10.16.65.209 Discarding packet received on eth1 interface that has no IPv4 address assigned. Discarding packet received on eth1 interface that has no IPv4 address assigned. Discarding packet received on eth1 interface that has no IPv4 address assigned. So the segfault probably results in em2 not having an IPv4 address assigned. But actually that's what I'm trying to do. Would be nice if you could contact me on irc as I'm working on reproducing bug #845515 and could use a little help with that. TIA Jiri! I think I see my error now. I had ibm-dx360m4-01.rhts.eng.bos.redhat.com eth0 has in IP from DHCP eth1 (direct connection to dell-per610-01) just had link up, but no IP assigned. This causes the segfault and still should be fixed. Now that I've manually assigned an IP to eth1 dhcrelay works. Created attachment 623346 [details]
patch
This has been fixed upstream in ISC dhcp-4.2.2b1 with the following note in changelog:
- Relay no longer crashes, when DHCP packet is received over interface without
any IPv4 address assigned. [ISC-Bugs #22409]
*** Bug 920559 has been marked as a duplicate of this bug. *** Hi Jiri, please do you know when this patch will included? thanks Michal, you can check the Flags yourself: rhel‑6.5.0? means that it's been proposed for 6.5 pm_ack? means that we are waiting for product management (pm) once rhel-6.x.0 is + instead of ? it means it'll be fixed in rhel-6.x.0 (In reply to comment #9) > Michal, you can check the Flags yourself: I've just realized that you probably can't see them, sorry. So ... yes, it's been proposed for 6.5, but it all depends on product management. (In reply to comment #10) > (In reply to comment #9) > > Michal, you can check the Flags yourself: > > I've just realized that you probably can't see them, sorry. > So ... yes, it's been proposed for 6.5, but it all depends on product > management. Hi Jiri, yes, you're right. Flags field is empty for me even I've logged here. Thanks for info. Verified with dhclient-4.1.1-38.P1.el6.x86_64. dhcrelay no longer segfaults when IP address is not present on network interfaces. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2013-1572.html |