Bug 19504 - pump doesn't disable interface on exit
Summary: pump doesn't disable interface on exit
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: pump
Version: 6.2
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Elliot Lee
QA Contact: David Lawrence
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2000-10-21 06:39 UTC by Scott Renfro
Modified: 2007-04-18 16:29 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2001-07-20 15:41:16 UTC
Embargoed:


Attachments (Terms of Use)

Description Scott Renfro 2000-10-21 06:39:57 UTC
The background info for this is in Bug 19501.

When pump fails to renew a lease and then fails to get a new lease
for the interface, it exits.  Unfortunately, before exiting it does
not disable the interface or remove the IP address from the interface.

This (in combination with Bug 19501 and Bug 19502) leads to IP
address conflicts on a network. In the existing code, if the client
is unable to renew on the first attempt, it immediately tries to
get a new lease (which almost certainly fails for the same reason
the renew failed) and then exits.  The interface keeps running with
the expired lease's IP address. Sooner or later the DHCP server
will hand that address out to another host (although the server
and other client should really do an arp to see if it's already
taken although MS does not -- at least in some configs).  Since
pump has exited, it will not ever renew the lease.

I suspect the right thing to do (if the patch from Bug 19502 isn't
applied) may be to call pumpDisableInterface() before calling
exit(0) around pump.c:390.

-scott

Comment 1 Elliot Lee 2001-07-20 15:41:12 UTC
I can't find any places where pump exits without first calling the ifdown scripts...


Note You need to log in before you can comment on or make changes to this bug.