Commit Graph

4699 Commits

Author SHA1 Message Date
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
00bcc42a35 logging: log DHCP state changes 2010-05-01 09:26:57 -07:00
Dan Williams
0e546480fa dhcp6: fix merging of DHCPv6 config into interface config
If we're doing autoconf + DHCPv6 info-only, we need to combine the
DHCP and IPv6 configuration into the final device configuration.
2010-05-01 08:12:25 -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
398b41a61d trivial: IP6Config object cleanups 2010-05-01 08:05:39 -07:00
Dan Williams
9f85d3533e ip6: fix log message arguments 2010-04-30 17:33:44 -07:00
Dan Williams
2282f352a4 ip6: better logging of IPv6 autoconf process 2010-04-30 17:30:36 -07:00
Dan Williams
8a59706712 ip6: ensure manager singleton is cleared when disposed 2010-04-30 17:30:11 -07:00
Dan Williams
7b3103b5eb ip6: initialize IPv6 address config a bit later
Stage 1 gets overridded by most device subclasses and it turns out
they don't every chain back up to NMDevice's stage1 implementation.
It's a bit complicated to make them all do that, so for now just
move the IPv6 address config a bit later.
2010-04-30 16:10:29 -07:00
Dan Williams
a64600d796 ip6: bump the autoconf RA timeout a bit
The RA interval is configurable on the router and we don't want
to miss one.  20s is still a lot less than we allow for DHCP so
the latency isn't that big of an issue.
2010-04-30 16:09:36 -07:00
Dan Williams
b24f5c8da9 ip6: 'manual' method doesn't use the IP6 manager 2010-04-30 16:09:02 -07:00
Dan Williams
7e980d8be3 ip6: fix manual IP config application 2010-04-30 15:49:41 -07:00
Dan Williams
cc0c2783b6 libnm-util: fix IPv6 address array -> string transform
Only used for debugging, but it's nice to see the actual address
instead of a transform error.
2010-04-30 15:29:53 -07:00
Dan Williams
93d1d81938 Revert "dbus: add Debian D-Bus permission config"
This reverts commit 3d69429a1e.

Apparently the 'netdev' group rules aren't as widespread anymore
and Debian ships with ConsoleKit by default, and thus can
use at_console.
2010-04-30 11:44:56 -07:00
Dan Williams
3d69429a1e dbus: add Debian D-Bus permission config
From Michael Biebl and the debian packages.
2010-04-30 11:18: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
e01039dcd2 examples: add example printing out all BSSIDs we can see 2010-04-29 08:26:28 -07:00
Dan Williams
257b4b34da examples: add example for listing connections 2010-04-28 18:39:42 -07:00
Dan Williams
17e0749c76 ip6: disconnect netlink signal handler on dispose 2010-04-27 17:16:02 -07:00
Jiří Klimeš
ea1e6f2f7b ip6: fix a crash when /proc/sys/net/ipv6/conf/<iface>/* files are not present 2010-04-27 15:59:46 +02:00
Dan Williams
871f9934fa build: default to pppd-2.4.5 plugin dir
People should be using 2.4.5 now anyway, since it's been out for
quite a while and includes the fixes for the bogus DNS servers.
2010-04-26 23:56:01 -07:00
Dan Williams
c3ebe98ae3 Merge remote branch 'origin/ip6only' 2010-04-26 17:33:45 -07:00
Dan Williams
5331c22adf dns: filter duplicates while constructing resolv.conf 2010-04-26 16:09:25 -07:00
Dan Williams
b127f4aa98 ip6: move class boilerplate/setup to the bottom 2010-04-26 15:04:01 -07:00
Dan Williams
de1a4dcc4b ip6: fix autoconf address and route scraping
Two things:

1) we need to bounce IPv6 on the interface because otherwise the
kernel won't start listening for new RAs.  So code gets added
to handle the 'disable_ipv6' /proc/sys/net/ipv6 parameter for
each interface.

2) Second, we need to grab a default route (if we find one) before
reading addresses, so that we can add it to each address that we
get out of the kernel.  Most of the time we'll get an -EEXIST error
when adding address, but that's OK since we're just trying to add
the same route back that the kernel already added from the RA.  We
also need to make sure the route and address caches are up-to-date
otherwise we won't get a complete picture of the routing table.
2010-04-26 14:08:10 -07:00
Dan Williams
11a6225aac ip6: correctly handle routes with no gateways
For these we don't need to set any gateway at all, and the kernel
assumes that it's a default route without a next hop.
2010-04-26 14:06:58 -07:00
Dan Williams
08c33651c7 test: needs -ldl too for logger code 2010-04-26 13:51:19 -07:00
Dan Williams
0ad8fc1adc libnm-glib: use max timeout for settings dbus calls
These calls may require authentication, and thus could be in-progress
for much longer than the default D-Bus timeout, which is pretty short.
2010-04-25 22:48:10 -07:00
Dan Williams
9b944dec96 core: ignore mobile broadband ethernet devices that aren't usable (rh #585214)
Not all ethernet devices are immediately usable; newer mobile broadband
devices (Ericsson, Option, Sierra) require setup on the tty before the
ethernet device is usable.  2.6.33 and later kernels set the 'DEVTYPE'
uevent variable which we can use to ignore the interface as a NMDevice
subclass.  ModemManager will pick it up though and so we'll handle it
through the mobile broadband stuff.
2010-04-25 09:52:01 -07:00
Dan Williams
a799b0a0b9 Merge remote branch 'origin/master' into ip6only 2010-04-24 15:09:40 -07:00
Marek Černocký
a7ab278498 po: update Czech translation (bgo #616630) 2010-04-24 00:15:40 -07:00
Shankar Prasad
9f01ed9f9a po: update Kannada translation (bgo #616625) 2010-04-24 00:14:45 -07:00
Krishna Babu K
f8d1d7e832 po: update Telugu translation (bgo #616399) 2010-04-24 00:13:31 -07:00
Dan Williams
e218092d62 core: first pass of IPv6 routing and DNS update on IP config change
Mostly the same as the IPv4 bits; dupe them for IPv6.  A lot of
duplicated code, but it's hard to consolidate.
2010-04-23 22:11:22 -07:00
Dan Williams
837364726b dns: handle IPv6 nameservers more like IPv4 ones 2010-04-23 22:08:56 -07:00
Dan Williams
bb936cd46c core: ensure IP stage failure when stuff actually fails 2010-04-23 21:52:10 -07:00
Dan Williams
8d0d80d8df core: assure a valid IPv6 config on timeout success 2010-04-23 21:51:09 -07:00
Dan Williams
aaf10a8edb core: don't pointlessly clear IP6 config on success 2010-04-23 21:48:16 -07:00
Dan Williams
6b63481d4d core: prepare for IPv6 routing and DNS stuff 2010-04-23 16:37:45 -07:00
Dan Williams
b172519045 core: fail connections if IP configuration expires
Need to mark these connections invalid too, otherwise they'll just be
retried over and over and over.  Ran into a problem with DHCPv6 where
lease expiration (cached lease really) was *negative*, which caused
the lease to expire immediately after being bound.  Previously the
policy wouldn't mark connections like this as invalid because they
hadn't failed during activation.

NetworkManager: <info> (eth0): carrier now ON (device state 2)
NetworkManager: <info> (eth0): device state change: 2 -> 3 (reason 40)
NetworkManager: <info> Activation (eth0) starting connection 'dhcp6 test'
NetworkManager: <info> (eth0): device state change: 3 -> 4 (reason 0)
NetworkManager: <info> Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled...
NetworkManager: <info> Activation (eth0) Stage 1 of 5 (Device Prepare) started...
NetworkManager: <info> Activation (eth0) Stage 2 of 5 (Device Configure) scheduled...
NetworkManager: <info> Activation (eth0) Stage 1 of 5 (Device Prepare) complete.
NetworkManager: <info> Activation (eth0) Stage 2 of 5 (Device Configure) starting...
NetworkManager: <info> (eth0): device state change: 4 -> 5 (reason 0)
NetworkManager: <info> Activation (eth0) Stage 2 of 5 (Device Configure) successful.
NetworkManager: <info> Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled.
NetworkManager: <info> Activation (eth0) Stage 2 of 5 (Device Configure) complete.
NetworkManager: <info> Activation (eth0) Stage 3 of 5 (IP Configure Start) started...
NetworkManager: <info> (eth0): device state change: 5 -> 7 (reason 0)
NetworkManager: <info> Activation (eth0) Beginning DHCPv6 transaction (timeout in 45 seconds)
NetworkManager: <info> dhclient started with pid 6639
NetworkManager: <info> Activation (eth0) Stage 3 of 5 (IP Configure Start) complete.
Internet Systems Consortium DHCP Client 4.1.1
Copyright 2004-2010 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

NetworkManager: <info> (eth0): DHCPv6 state changed nbi -> preinit6
Bound to *:546
Listening on Socket/eth0
Sending on   Socket/eth0
PRC: Confirming active lease (INIT-REBOOT).
XMT: Forming Confirm, 0 ms elapsed.
XMT:  X-- IA_NA 5a:47:1f:71
XMT:  | X-- Confirm Address 3ffe:501:ffff::4
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 1090ms.
send_packet6: Cannot assign requested address
dhc6: sendpacket6() sent -1 of 80 bytes
XMT: Forming Confirm, 1090 ms elapsed.
XMT:  X-- IA_NA 5a:47:1f:71
XMT:  | X-- Confirm Address 3ffe:501:ffff::4
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 2120ms.
send_packet6: Cannot assign requested address
dhc6: sendpacket6() sent -1 of 80 bytes
XMT: Forming Confirm, 3210 ms elapsed.
XMT:  X-- IA_NA 5a:47:1f:71
XMT:  | X-- Confirm Address 3ffe:501:ffff::4
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 4320ms.
XMT: Forming Confirm, 7530 ms elapsed.
XMT:  X-- IA_NA 5a:47:1f:71
XMT:  | X-- Confirm Address 3ffe:501:ffff::4
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 2470ms.
Max retransmission duration exceeded.
PRC: Bound to lease 00:01:00:01:12:e1:92:d9:00:14:22:fd:06:e7.
PRC: Rebind event scheduled in -8604281 seconds, to run for 110 seconds.
PRC: Depreference scheduled in -8604241 seconds.
PRC: Expiration scheduled in -8604171 seconds.
PRC: Rebinding lease on eth0.
PRC: Depreference scheduled in -8604241 seconds.
PRC: Expiration scheduled in -8604171 seconds.
NetworkManager: <info> (eth0): DHCPv6 state changed preinit6 -> bound6
NetworkManager: <info> Activation (eth0) Stage 4 of 5 (IP6 Configure Get) scheduled...
NetworkManager: <info> Activation (eth0) Stage 4 of 5 (IP6 Configure Get) started...
NetworkManager: <info>   address 3ffe:501:ffff::4
NetworkManager: <info>   prefix 64
NetworkManager: <info>   nameserver '2000::2'
NetworkManager: <info>   domain search 'ibm.com.'
NetworkManager: <info> Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled...
NetworkManager: <info> Activation (eth0) Stage 4 of 5 (IP6 Configure Get) complete.
NetworkManager: <info> Activation (eth0) Stage 5 of 5 (IP Configure Commit) started...
PRC: Address 3ffe:501:ffff::4 depreferred.
PRC: Expiration scheduled in -8604171 seconds.
PRC: Address 3ffe:501:ffff::4 expired.
PRC: Bound lease is devoid of active addresses.  Re-initializing.
PRC: Soliciting for leases (INIT).
XMT: Forming Solicit, 0 ms elapsed.
XMT:  X-- IA_NA 5a:47:1f:71
XMT:  | X-- Request renew in  +3600
XMT:  | X-- Request rebind in +5400
XMT: Solicit on eth0, interval 1040ms.
Stopping nscd: [  OK  ]
Starting nscd: [  OK  ]
NetworkManager: <info> (eth0): device state change: 7 -> 8 (reason 0)
NetworkManager: <info> Activation (eth0) successful, device activated.
NetworkManager: <info> Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete.
NetworkManager: <info> (eth0): DHCPv6 state changed bound6 -> depref6
NetworkManager: <info> (eth0): DHCPv6 state changed depref6 -> expire6
2010-04-23 15:52:09 -07:00
Dan Williams
eaa750dda9 dhcp: add missing DHCPv6 client states 2010-04-23 15:30:46 -07:00
Dan Williams
7b38686dbd Merge remote branch 'origin/master' into ip6only 2010-04-23 14:34:39 -07:00
Dan Williams
f20f7294f6 ifcfg-rh: fix handling of WEP passphrases (rh #581718)
ifcfg-rh wasn't updated for WEP passphrases after that capability
got added.  Can't use KEY for passphrases since there's no way
to distinguish some WEP passphrases from some WEP Hex and ASCII
keys, so we use KEY_PASSPHRASE instead.
2010-04-23 14:20:10 -07:00
Dan Williams
4a2bb8b647 core: don't even bother running IPv4 or IPv6 when they are disabled 2010-04-23 12:56:33 -07:00
Dan Williams
24bd77dc92 ifcfg-rh: missing IP4 setting means DHCP 2010-04-23 12:55:05 -07:00
Dan Williams
1d882c8ade Merge remote branch 'origin/master' into ip6only 2010-04-23 12:13:24 -07:00