Commit graph

17 commits

Author SHA1 Message Date
Dan Williams
be97e7f104 build: include <config.h> for kill(2), isblank(3), and isascii(3)
config.h defines _GNU_SOURCE, which in turn defines the bits necessary
for kill, isblank, and isascii.  So wherever we use those, we need
to make sure config.h is included.
2010-10-08 22:46:55 -05:00
Dan Williams
e780145a8f dhcp4: handle NIS servers and domains 2010-07-16 11:28:39 -07:00
Dan Williams
26312c087e core: simplify DHCP hostname handling
Reduce memory usage by not duplicating the IP4 setting.
2010-06-28 17:17:24 -07:00
Dan Williams
28d2c5592b dhcp: ensure getting DHCP IP config fails if the client died early
If the client never delivered any options to NM, make sure we don't
return a valid IP config object to callers when they request one.
2010-05-02 00:24:50 -07:00
Dan Williams
c34cc017ba dhcp: handle client early exit correctly
When the client	exits it may take a short amount of time for the
dhclient hook script to	deliver	the options to NetworkManager; so
we need	to keep	the client object around a bit (so we know what
NMDHCPClient the options getting delivered are for).  If we don't,
the DHCPManager will dispose of	the DHCPClient object and then
when the options come in, it can't match up the	PID from the
options with the PID of	an existing NMDHCPClient.  So put the
clients	on a removal timer that	keeps them around for a	bit before
we let the manager dispose of them.

Since we're keeping the	PID around too instead of zeroing it when
the client exits (for the reason above), track whether the client
is really dead yet so we don't indiscriminately	kill a random
process	that happens to re-use the PID.
2010-05-02 00:24:40 -07:00
Dan Williams
39c2797848 dhcp: don't reset pid on client exit
Clients in IPv6 info-only mode may exit after getting a response
from the server, since there are no leases involved in info-only
mode.  To ensure that the client's options are received when the
event comes in (which could be after we get the child watch
callback for the exit) we still need the client's PID.
2010-05-01 10:12:25 -07:00
Dan Williams
8398ccba59 dhcp: simplify option iteration
Also removes the failure return when the lease isn't bound,
because nothing was respecting the return value anyway.
2010-05-01 09:48:31 -07:00
Dan Williams
41f3a67092 dhcp: fix client end state when it exits normally 2010-05-01 09:27:32 -07:00
Dan Williams
d1be3793a1 dhcp6: info-only requests don't require addresses
They aren't actual leases so an info-only request doesn't return
an address.
2010-05-01 08:10:49 -07:00
Dan Williams
eaa750dda9 dhcp: add missing DHCPv6 client states 2010-04-23 15:30:46 -07:00
Dan Williams
75e789399c dhcp: update logging 2010-04-06 18:07:18 -07:00
Dan Williams
f5f1da66b5 core: fix auto determination of classful IPv4 address and add testcase (bgo #603098)
The original patch didn't actually fix the main DHCP option code,
just the dhclient leasefile reading code.  Add some testcases for
good measure.
2010-03-01 17:29:15 -08:00
Dan Williams
35c4b97d7d dhcp6: first stab at autoconf otherconf/managed mode support 2010-01-27 16:20:09 -08:00
Dan Williams
fbe413cbcd dhcp: ensure DHCP client is stopped on timeout 2010-01-15 12:50:38 -08:00
Dan Williams
a9e32f3c3b dhcp: add initial DHCPv6 support (managed mode only) 2010-01-14 00:45:10 -08:00
Dan Williams
fe62e59c7e dhcp: add DHCPv6 functionality 2010-01-13 16:51:20 -08:00
Dan Williams
1806235049 dhcp: convert dhcp backends to classes 2010-01-12 22:09:28 -08:00