NetworkManager/src/libnm-platform
Beniamino Galvani fddda02825 platform: drop ioctl fallback for finding veth's peer
The peer ifindex of a veth interface is available via netlink since
kernel 4.1 released in 2015. Drop the code that falls back to ioctl.

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1881
2026-03-04 16:51:57 +00:00
..
devlink platform: move ethtool ioctl functions to a separate file 2025-04-17 08:10:49 +02:00
tests platform: add support for GENEVE tunnels 2026-02-17 15:21:03 -05:00
wifi format: run nm-code-format 2024-10-04 11:07:35 +02:00
wpan all: use _NM_G_TYPE_CHECK_INSTANCE_CAST() for internal uses 2022-12-16 10:55:03 +01:00
meson.build platform: add ethtool netlink implementation 2025-04-17 08:10:50 +02:00
nm-linux-platform.c platform: track onlink flag per-nexthop for IPv4 routes 2026-03-02 10:57:56 +00:00
nm-linux-platform.h platform: rename nm_linux_platform_get_link_fdb_table() 2025-07-10 09:12:02 +02:00
nm-netlink.c format: run nm-code-format 2024-10-04 11:07:35 +02:00
nm-netlink.h format: run nm-code-format 2024-10-04 11:07:35 +02:00
nm-platform-private.h format: reformat source tree with clang-format 13.0 2021-11-29 09:31:09 +00:00
nm-platform-utils.c platform: move ethtool ioctl functions to a separate file 2025-04-17 08:10:49 +02:00
nm-platform-utils.h platform: move ethtool ioctl functions to a separate file 2025-04-17 08:10:49 +02:00
nm-platform.c platform: drop ioctl fallback for finding veth's peer 2026-03-04 16:51:57 +00:00
nm-platform.h platform: track onlink flag per-nexthop for IPv4 routes 2026-03-02 10:57:56 +00:00
nmp-base.c src: drop most slave references from the code 2024-08-09 15:47:32 +02:00
nmp-base.h platform: add support for GENEVE tunnels 2026-02-17 15:21:03 -05:00
nmp-ethtool-ioctl.c platform: drop ioctl fallback for finding veth's peer 2026-03-04 16:51:57 +00:00
nmp-ethtool-ioctl.h platform: drop ioctl fallback for finding veth's peer 2026-03-04 16:51:57 +00:00
nmp-ethtool.c platform: use g_strdup() instead of strdup() in ethtool code 2025-07-10 09:12:00 +02:00
nmp-ethtool.h platform: replace ring ethtool ioctl calls with netlink 2025-04-17 08:10:53 +02:00
nmp-global-tracker.c format: run nm-code-format 2024-10-04 11:07:35 +02:00
nmp-global-tracker.h platform: introduce function to globally track local route rule 2023-02-21 15:36:38 +01:00
nmp-netns.c format: run nm-code-format 2024-10-04 11:07:35 +02:00
nmp-netns.h all: use _NM_G_TYPE_CHECK_INSTANCE_CAST() for internal uses 2022-12-16 10:55:03 +01:00
nmp-object.c platform: add support for GENEVE tunnels 2026-02-17 15:21:03 -05:00
nmp-object.h platform: add support for GENEVE tunnels 2026-02-17 15:21:03 -05:00
nmp-plobj.c all: use NM_MIN() instead of MIN() 2023-11-15 09:32:20 +01:00
nmp-plobj.h format: run nm-code-format 2024-10-04 11:07:35 +02:00
README.md platform: support IPv6 mulitpath routes and fix cache inconsistency 2022-02-16 09:59:49 +01:00

libnm-platform

A static helper library that provides NMPlatform and other utils. This is NetworkManager's internal netlink library, but also contains helpers for sysfs, ethtool and other kernel APIs.

NMPlaform is also a cache of objects of the netlink API: NMPCache and NMPObject. These objects are used throughout NetworkManager also for generally tracking information about these types. For example, NMPlatformIP4Address (the public part of a certain type of NMPObject) is not only used to track platform addresses from netlink in the cache, but to track information about IPv4 addresses in general.

This depends on the following helper libraries