Commit graph

151 commits

Author SHA1 Message Date
Dan Williams
9b2b809aae core: rename NMNamedManager -> NMDnsManager 2010-09-07 22:08:18 -05:00
Mathieu Trudel-Lapierre
d39fda7722 dhcp: don't fail with dhclient v3 2010-08-12 17:52:20 -05:00
Dan Williams
c050e036c3 dhcp: make sure disabled DHCP clients aren't used (gentoo #330319)
If the client was disabled with --with-dhclient=no or
--with-dhcpcd=no, then it's corresponding _PATH will be an empty
string.  In that case we want to ignore that client completely
since it was disabled at build time.
2010-08-05 15:29:23 -05:00
Dan Williams
e780145a8f dhcp4: handle NIS servers and domains 2010-07-16 11:28:39 -07:00
Michael Biebl
c8c161780a dhcp: use ISC DHCPv4 paths now that v4 is nominally required 2010-07-09 11:33:27 -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
3d4b6163b9 dhcp: try /etc/dhcp too for !SUSE && !DEBIAN && !GENTOO (rh #607759) 2010-06-28 11:18:12 -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
07de58bbeb dhcp: clean up client spawn return value 2010-05-01 09:53:49 -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
e3de3b65ef logging: print DHCP client pid in warnings 2010-05-01 08:09:12 -07:00
Dan Williams
9830c60d11 dhcp: fix superclass type of dhcpcd plugin
From Mikhail Efremov <sem@altlinux.org>
2010-04-29 11:31:43 -07:00
Dan Williams
eaa750dda9 dhcp: add missing DHCPv6 client states 2010-04-23 15:30:46 -07:00
Dan Williams
c35bec214c dhcp: ensure the IP4 method is compatible with DHCP 2010-04-15 14:54:42 -07:00
Dan Williams
75e789399c dhcp: update logging 2010-04-06 18:07:18 -07:00
Dan Williams
b7d21eba69 dhcp: print out DHCP client command strings 2010-03-23 18:50:32 -07:00
Dan Williams
78dd4fc9f2 dhcp: make client selection more forgiving
If your distributor forgot to set up the client path for you, this
makes NM look in the right places and allows you to use either client
if it's installed, no matter what NM was configured with.
2010-03-23 14:22:10 -07:00
Dan Williams
111ff83493 dhcp: tell dhcpcd to send hostname to server too if requested 2010-03-23 13:25:15 -07:00
Jiří Klimeš
798d68caa4 dhcp: more intelligent default DHCP client detection 2010-03-06 00:07:06 -08:00
Jiří Klimeš
bfe58b26fb trivial: replace NetworkManager.c occurence after renaming to main.c 2010-03-03 09:57:28 +01: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
Jirka Klimes
0f0daf7852 core: determine classful IPv4 prefix if no DHCP netmask is provided (bgo #603098) 2010-02-25 16:52:10 -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
f094e0ad9d dhcp: dhclient leasefile and pidfile fixes for IPv6
Don't use the same lease and pid files for IPv6 as for IPv4.
2010-01-14 00:39:58 -08:00
Dan Williams
3568a98a61 dhcp: fix dhcp 4/6 mixup 2010-01-13 17:59:19 -08:00
Dan Williams
fe62e59c7e dhcp: add DHCPv6 functionality 2010-01-13 16:51:20 -08:00
Dan Williams
81f23ea383 dhcp: actually use runtime-selected DHCP client 2010-01-12 23:07:44 -08:00
Dan Williams
702836b42f dhcp: allow runtime DHCP client selection via config file 2010-01-12 22:55:24 -08:00
Dan Williams
1806235049 dhcp: convert dhcp backends to classes 2010-01-12 22:09:28 -08:00
Dan Williams
d997785db3 dhcp6: genericize DHCP client tracking
Since the same interface could be used for both	DHCPv4 and DHCPv6 we
can't just use 'iface' for tracking DHCP client lease changes.  Instead
use a generated client ID, and track DHCP events based on the client's
PID instead of interface name.
2010-01-08 17:16:05 -08:00
Dan Williams
3ee1eb7a6c dhcp6: add dhclient ipv6 states 2010-01-08 15:22:11 -08:00
Dan Williams
0075b41510 dhcp: clarify ignored variable name 2009-12-23 11:08:56 -08:00
Frederik Himpe
f4c1a52876 dhcp: use correct leasefile location on Mandriva 2009-11-15 22:42:16 -08:00
Dan Williams
718e3bf89c build: remove unused references to HAL 2009-08-20 12:38:59 -05:00
Dan Williams
537c2f1f86 build: always link locally-built libraries first (bgo #580131) 2009-08-20 12:31:17 -05:00
Dan Williams
f2eb3dea65 core: base infrastructure for connection assumption
Figure out what connections can be assumed when a device is added,
and on shutdown don't blow away connections that can be assumed on
NM restart.
2009-08-03 17:15:03 -04:00
Daniel Drake
3fe8d0eed4 core: allow devices to specify a DHCP anycast address
Relevant only for OLPC at this point; the mesh device uses it to
target DHCP requests at a pre-defined mesh portal anycast address.
2009-07-15 13:53:49 -04:00
Daniel Drake
0f56957b77 core: allow device subclasses to override DHCP timeout 2009-07-15 13:48:28 -04:00
Dan Williams
b35aa0a022 dhcp: fix dhcp-client-identifier format for dhclient (bgo #588008) 2009-07-14 16:10:38 -04:00
Dan Williams
69eccdae34 dhcp: clean up DHCP status message format 2009-06-10 22:31:18 -04:00
Dan Williams
756bc70402 dhcp: (dhclient) use per-connection leasefiles and don't delete on deactivate
So that leases are actually useful...
2009-05-03 00:51:09 -04:00
Michael Biebl
1c3c6c2a66 Remove DBUS_API_SUBJECT_TO_CHANGE
We require dbus 1.1 anyway
2009-05-02 18:00:22 -04:00
Daniel Gryniewicz
20c662e350 dhcp: use correct dhclient config file location for Gentoo (bgo #579737) 2009-04-23 10:44:08 -04:00
Dan Williams
9885de6bdb dhcp: handle escaped spaces in 'domain search' option (bgo #575145) 2009-04-08 21:03:43 -04:00