NetworkManager/src/core/devices
Thomas Haller 240ec7f891
dhcp: implement ACD (address collision detection) for DHCPv4
This was working for internal plugin in the past, but broken by l3cfg
rework with 1.36. Re-add it. Not it also works with dhclient. For other
plugins, it's not really working, because we can't decline.

Now NMDhcpClient does ACD (using NML3Cfg) and abstracts that from
the caller (NMDevice).

It is complicated. Because there is state involved, meaning, we need
to remember the current state for ACD and react on and handle a
multitude of events. Getting this right, is non-trivial.

What we want is that if ACD fails, we decline the lease (and don't use
it).

https://bugzilla.redhat.com/show_bug.cgi?id=1713380
2022-06-01 10:37:44 +02:00
..
adsl format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
bluetooth settings: add "plugin" argument to AddAndActivate2() 2022-03-28 13:29:28 +02:00
ovs ovsdb: do not set the device as DEACTIVATING if it is DISCONNECTED 2022-05-25 15:51:43 +02:00
team device: make attach_port() asynchronous 2022-05-03 13:19:24 +02:00
tests format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
wifi wifi: disable FT in AP mode 2022-04-08 15:27:20 +02:00
wwan all: use "NM_UTILS_TO_STRING_BUFFER_SIZE" macro 2022-04-08 15:59:49 +02:00
meson.build all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-6lowpan.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-6lowpan.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-bond.c bond: drop _get_option_or_default() and use _get_option_normalized() 2022-05-10 12:42:11 +02:00
nm-device-bond.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-bridge.c bridge: assume wired settings are there 2022-05-10 21:41:19 +02:00
nm-device-bridge.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-dummy.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-dummy.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-ethernet-utils.c all: add "src/core/nm-default-daemon.h" as replacement for "nm-default.h" 2021-02-09 12:38:18 +01:00
nm-device-ethernet-utils.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-ethernet.c device: drop unused variable and avoid compiler warning 2022-03-17 19:31:29 +01:00
nm-device-ethernet.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-factory.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-factory.h format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-generic.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-generic.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-infiniband.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-infiniband.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-ip-tunnel.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-ip-tunnel.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-logging.h clang-format: use "IndentPPDirectives:None" instead of "BeforeHash" 2021-07-09 08:49:06 +02:00
nm-device-macsec.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-macsec.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-macvlan.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-macvlan.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-ppp.c ppp: allow autoconf6 when ipv6.method is 'auto' 2022-03-16 10:43:46 +01:00
nm-device-ppp.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-private.h core/device: rename nm_device_master_release_one_slave() 2022-03-13 12:08:52 +01:00
nm-device-tun.c ovs, dpdk: ignore ovs-netdev tun interface 2022-03-31 11:49:34 +02:00
nm-device-tun.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-utils.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-utils.h format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-veth.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-veth.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-vlan.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-vlan.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-vrf.c device: make attach_port() asynchronous 2022-05-03 13:19:24 +02:00
nm-device-vrf.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-vxlan.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-vxlan.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-wireguard.c platform: rename "nmp-route-manager.h" to "nmp-rules-manager.h" 2022-02-09 19:13:03 +01:00
nm-device-wireguard.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device-wpan.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-device-wpan.h all: move "src/" directory to "src/core/" 2021-02-08 09:56:41 +01:00
nm-device.c dhcp: implement ACD (address collision detection) for DHCPv4 2022-06-01 10:37:44 +02:00
nm-device.h device: make attach_port() asynchronous 2022-05-03 13:19:24 +02:00
nm-lldp-listener.c format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-lldp-listener.h format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00