NetworkManager/src/libnm-platform
Thomas Haller 34d48d2596
platform: clear all BASE types when setting advertised modes for ethernet autoneg
Get the list of supported flags from ethtool utility ([1]).

When we enable auto-negotiation, the user may select only one mode to
be advertised. But then we need to clear all other modes, the previous
define BASET_ALL_MODES did not cover them all.

[1] https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/tree/ethtool.c?id=7cca9692b9b0c4e2c7eb7868a7791f97202014b0#n397
2021-09-06 10:07:15 +02:00
..
tests platform: clear all BASE types when setting advertised modes for ethernet autoneg 2021-09-06 10:07:15 +02:00
wifi clang-format: use "IndentPPDirectives:None" instead of "BeforeHash" 2021-07-09 08:49:06 +02:00
wpan platform: move "platform/{wifi,wpan}/" to "src/libnm-platform/" 2021-03-05 11:27:15 +01:00
meson.build platform: move more platform code to src/libnm-platform/ 2021-03-05 11:27:16 +01:00
nm-linux-platform.c all: pass pointer to "struct NMUtilsIPv6IfaceId" to functions instead of struct 2021-08-31 16:49:46 +02:00
nm-linux-platform.h platform: move more platform code to src/libnm-platform/ 2021-03-05 11:27:16 +01:00
nm-netlink.c platform/netlink: use appropriate integer types in nla_policy 2021-08-17 13:18:08 +02:00
nm-netlink.h platform/netlink: use appropriate integer types in nla_policy 2021-08-17 13:18:08 +02:00
nm-platform-private.h platform: move more platform code to src/libnm-platform/ 2021-03-05 11:27:16 +01:00
nm-platform-utils.c platform: clear all BASE types when setting advertised modes for ethernet autoneg 2021-09-06 10:07:15 +02:00
nm-platform-utils.h platform: clear all BASE types when setting advertised modes for ethernet autoneg 2021-09-06 10:07:15 +02:00
nm-platform.c all: pass pointer to "struct NMUtilsIPv6IfaceId" to functions instead of struct 2021-08-31 16:49:46 +02:00
nm-platform.h all: pass pointer to "struct NMUtilsIPv6IfaceId" to functions instead of struct 2021-08-31 16:49:46 +02:00
nmp-base.h ethtool: Introducing PAUSE support 2021-05-12 18:04:46 +02:00
nmp-netns.c all: rename nm_utils_strbuf_*() API to nm_strbuf_*() 2021-08-02 09:26:42 +02:00
nmp-netns.h build: move "shared/nm-platform" to "src/libnm-platform" 2021-02-24 12:48:17 +01:00
nmp-object.c platform: workaround -Wmaybe-uninitialized with LTO 2021-08-27 09:54:20 +02:00
nmp-object.h platform: add nm_clear_nmp_object_up_cast(), nmp_object_ref_set_up_cast() helpers 2021-08-31 16:34:02 +02:00
nmp-rules-manager.c platform: move more platform code to src/libnm-platform/ 2021-03-05 11:27:16 +01:00
nmp-rules-manager.h platform: move more platform code to src/libnm-platform/ 2021-03-05 11:27:16 +01:00
README.md all: add some README.md files describing the purpose of our sources 2021-08-19 17:51:11 +02: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