Commit graph

11 commits

Author SHA1 Message Date
Thomas Haller
e25c458b6f
libnm: add _nm_setting_wired_is_valid_s390_option_value() validation function 2021-03-16 09:55:48 +01:00
Thomas Haller
ddc41d427a
libnm: add internal _nm_setting_wired_is_valid_s390_option() helper 2021-03-16 09:55:48 +01:00
Thomas Haller
fb0ac2e700
libnm: cleanup nm_setting_wired_add_s390_option()
- integers are unsigned. Mark the constants as such.

- assert that we don't overflow G_MAXUINT32. Note that
  nm_setting_wired_get_s390_option()'s index argument
  is of type guint32. So with that API you cannot track
  more than G_MAXUINT32 elements.

- use nm_utils_strdup_reset(). It's less code, but it's
  also self-assignment safe (contrary to the previous code).
2021-03-16 09:55:48 +01:00
Thomas Haller
9f93b0495b
libnm: improve error message for verify() failure for ethernet.s390-options 2021-03-16 09:55:48 +01:00
Thomas Haller
1794d80028
libnm: mark option parameters for nm_setting_wired_get_num_s390_options() as (allow-none) 2021-03-16 09:55:48 +01:00
Thomas Haller
dccfe1df34
libnm: use nm_utils_strv_find_binary_search() in valid_s390_opts_check() 2021-03-16 09:55:48 +01:00
Thomas Haller
b9d73cfb2d
libnm: only check once for valid static array in valid_s390_opts_check()
No need to check every time. The buffer is a const global buffer,
so checking it once is enough.
2021-03-16 09:55:48 +01:00
Thomas Haller
80c98b60da
libnm: make list of valid s390s options const
A const global variable is stored in immutable memory.
You thus get a crash trying to modify it, which is desirable.

The user is really not supposed to modify this buffer,
even if nm_setting_wired_get_valid_s390_options() wrongly
returns a non-const pointer.
2021-03-16 09:55:48 +01:00
Thomas Haller
e4aa3f4b2d
libnm: add "bridge_role" option to "ethernet.s390-options"
https://bugzilla.redhat.com/show_bug.cgi?id=1935842
2021-03-16 09:02:07 +01:00
Wen Liang
5e3482caec docs: improve manual page about ETHTOOL_OPTS
Signed-off-by: Wen Liang <liangwen12year@gmail.com>

https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/762
2021-03-10 14:25:51 +01:00
Thomas Haller
fdf9614ba7
build: move "libnm-core/" to "src/" and split it
"libnm-core/" is rather complicated. It provides a static library that
is linked into libnm.so and NetworkManager. It also contains public
headers (like "nm-setting.h") which are part of public libnm API.

Then we have helper libraries ("libnm-core/nm-libnm-core-*/") which
only rely on public API of libnm-core, but are themself static
libraries that can be used by anybody who uses libnm-core. And
"libnm-core/nm-libnm-core-intern" is used by libnm-core itself.

Move "libnm-core/" to "src/". But also split it in different
directories so that they have a clearer purpose.

The goal is to have a flat directory hierarchy. The "src/libnm-core*/"
directories correspond to the different modules (static libraries and set
of headers that we have). We have different kinds of such modules because
of how we combine various code together. The directory layout now reflects
this.
2021-02-18 19:46:51 +01:00
Renamed from libnm-core/nm-setting-wired.c (Browse further)