Systemd/src/network
Patrik Flykt be3a09b7ff network: Implement fallback DHCPv6 prefix handling for older kernels
When setting IPv6 addresses acquired by DHCPv6, systemd-networkd sets
the IFA_F_NOPREFIXROUTE flag in the IFA_FLAGS netlink attribute. As
the flag and the attribute are present starting with Linux 3.14, older
kernels will need systemd-network to manage prefix route expiry.

By default, DHCPv6 addresses are first assigned setting the
IFA_F_NOPREFIXROUTE flag in the IFA_FLAGS netlink attribute. Should
the address assignment fail, the same assignment is tried without
the IFA_FLAGS attribute. Should also the second attempt fail, an error
is printed and address assignment ends with failure. As successful use
of the IFA_FLAGS netlink attribute is recorded in the Link structure,
the DHCPv6 code will know if the kernel or systemd-network fallback
code handles expiring prefixes.

The prefix expiration and IPv6 address updating fallback code is
resurrected from the parts deleted with commit
47d45d3cde.

This patch can be removed once the minimum kernel requirements are
greater than or equal to 3.14.
2015-05-04 09:42:37 +03:00
..
.gitignore Revert "update gitignore" 2014-05-22 06:14:41 +09:00
Makefile networkd: add a basic network daemon 2013-11-09 23:41:17 +01:00
networkctl.c shared: add terminal-util.[ch] 2015-04-11 00:34:02 +02:00
networkd-address-pool.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-address.c network: Implement fallback DHCPv6 prefix handling for older kernels 2015-05-04 09:42:37 +03:00
networkd-dhcp4.c networkd: Make DHCP client ID creation configurable 2015-03-04 11:01:39 +01:00
networkd-dhcp6.c network: Implement fallback DHCPv6 prefix handling for older kernels 2015-05-04 09:42:37 +03:00
networkd-fdb.c networkd-fdb: indentation/whitespace fixes 2015-04-21 17:43:55 +02:00
networkd-ipv4ll.c networkd: generalize IPv4LL to LinkLocal 2015-02-09 12:20:10 +01:00
networkd-link-bus.c networkd: link_object_find - don't accept invalid input 2015-02-09 22:02:32 +01:00
networkd-link.c network: Implement fallback DHCPv6 prefix handling for older kernels 2015-05-04 09:42:37 +03:00
networkd-link.h network: Implement fallback DHCPv6 prefix handling for older kernels 2015-05-04 09:42:37 +03:00
networkd-manager-bus.c networkd: gracefully handle failure to emit signals when dbus is not connected 2015-02-05 18:02:42 +01:00
networkd-manager.c sd-bus: drop bus parameter from message callback prototype 2015-04-29 18:36:25 +02:00
networkd-netdev-bond.c networkd: Add support for bond option. 2015-04-20 20:14:34 +02:00
networkd-netdev-bond.h networkd: Add support for bond option. 2015-04-20 20:14:34 +02:00
networkd-netdev-bridge.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-bridge.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-dummy.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-dummy.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-gperf.gperf networkd man: fix man and config name. 2015-04-21 11:17:37 +02:00
networkd-netdev-ipvlan.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-ipvlan.h networkd: netdev - add ipvlan support 2015-01-19 23:25:16 +01:00
networkd-netdev-macvlan.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-macvlan.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-tunnel.c networkd: introduce vti6 tunnel 2015-04-29 21:54:00 +02:00
networkd-netdev-tunnel.h networkd: introduce vti6 tunnel 2015-04-29 21:54:00 +02:00
networkd-netdev-tuntap.c networkd: fix confusion between log_netdev_error() but log_warning_netdev() 2015-04-21 01:26:59 +02:00
networkd-netdev-tuntap.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-veth.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-veth.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-vlan.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-netdev-vlan.h networkd: netdev - split NetDev struct into per-kind structs 2014-07-21 13:32:27 +02:00
networkd-netdev-vxlan.c networkd vxlan: Add support for enabling UDP checksums 2015-04-20 20:09:32 +02:00
networkd-netdev-vxlan.h networkd vxlan: Add support for enabling UDP checksums 2015-04-20 20:09:32 +02:00
networkd-netdev.c networkd: introduce vti6 tunnel 2015-04-29 21:54:00 +02:00
networkd-netdev.h networkd: introduce vti6 tunnel 2015-04-29 21:54:00 +02:00
networkd-network-bus.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-network-gperf.gperf network: add UseNTP DHCP option 2015-03-15 17:26:58 -04:00
networkd-network.c networkd: introduce vti6 tunnel 2015-04-29 21:54:00 +02:00
networkd-route.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-wait-online-link.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-wait-online-link.h networkd-wait-online: track links 2014-07-17 22:53:35 +02:00
networkd-wait-online-manager.c remove unused includes 2015-02-23 23:53:42 +01:00
networkd-wait-online.c networkd-wait-online: add timeout 2015-02-02 11:57:52 +01:00
networkd-wait-online.h remove unused includes 2015-02-23 23:53:42 +01:00
networkd.c networkd: use LOG_WARN not LOG_ERR for non-fatal errors 2015-03-21 11:51:43 -04:00
networkd.h networkd: improve how networkd logs things 2015-04-21 17:43:55 +02:00
org.freedesktop.network1.conf networkd: add basic dbus API 2015-02-05 11:50:34 +01:00
org.freedesktop.network1.service networkd: add basic dbus API 2015-02-05 11:50:34 +01:00
test-network-tables.c remove unused includes 2015-02-23 23:53:42 +01:00
test-network.c networkd: refactor socket activation a bit 2015-02-03 22:20:38 +01:00