summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* man: update documentation about global DNS configurationbg/dnsmasq-global-confBeniamino Galvani2023-03-031-6/+11
| | | | | | | | | Now the settings in the [global-dns] section are used *in addition* to connection-specific ones. Only the global domains sections, when valid, override connection settings. Update the man page to clarify that. Fixes: 1f0d1d78d2a2 ('dns-manager: always apply options from [global-dns]')
* dnsmasq: process both global and per-device configurationBeniamino Galvani2023-03-031-1/+2
| | | | | | | | | The global configuration now can be valid when there are no global domains defined. The dnsmasq backend must process it and then, if there is no global default domain, also process the per-connection settings. Fixes: 1f0d1d78d2a2 ('dns-manager: always apply options from [global-dns]')
* contrib: add usage comment to "git-subtree-reimport.sh"Thomas Haller2023-03-031-0/+9
|
* c-stdaux: re-import git-subtree for 'src/c-stdaux'Thomas Haller2023-03-035-1/+345
|\ | | | | | | git subtree pull --prefix src/c-stdaux git@github.com:c-util/c-stdaux.git main --squash
| * Squashed 'src/c-stdaux/' changes from eceefe959250..699c20de4e81Thomas Haller2023-03-035-1/+345
| | | | | | | | | | | | | | | | | | | | | | | | 699c20de4e81 c-stdaux: workaround warning "-Wunused-value" in c_internal_assume_aligned() 193444c22c09 c-stdaux: workaround compiler error with clang 3.4 and __builtin_assume_aligned() ed5fee49a3ec build: prepare v1.4.0 615c52daed67 Merge pull request #14 from dvdhrm/pr/load 32462ddc2ea5 c-stdaux: add c_load*() helpers 5878375d81ba c-stdaux: add c_assume_aligned() git-subtree-dir: src/c-stdaux git-subtree-split: 699c20de4e81f4b15786cb170340a87f69483f3d
* | platform: fix test_link_set_properties()bg/tmpBeniamino Galvani2023-03-031-3/+4
| | | | | | | | | | | | | | The link object is no longer valid after the cache gets updated in nm_platform_link_change(). Fixes: e02fd76d9fce ('platform: support changing link properties')
* | merge: branch 'bg/link-setting'Beniamino Galvani2023-03-0329-21/+761
|\ \ | | | | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=2158328 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1541
| * | device: manually update link properties for ovs interfacesbg/link-settingBeniamino Galvani2023-03-023-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | OVS interfaces are special: the kernel link is created only after the device is attached to the ovs-port, and as with all ports this happens during stage3(ip-config). That means that the link doesn't exist during stage2(config); therefore, explicitly update link properties once the link appears.
| * | device: set link propertiesBeniamino Galvani2023-03-021-2/+159
| | | | | | | | | | | | | | | Set link properties during activation and restore the previous values on deactivation.
| * | platform: support changing link propertiesBeniamino Galvani2023-03-024-1/+150
| | | | | | | | | | | | | | | Add support in platform for changing the newly introduced link properties.
| * | all: add "link" settingBeniamino Galvani2023-03-0221-3/+423
| | | | | | | | | | | | | | | Introduce a new "link" setting that holds properties that are related to the kernel link.
| * | libnm-core: remove assertion in testBeniamino Galvani2023-03-021-2/+0
| | | | | | | | | | | | | | | It's another place to change when adding a new setting and it doesn't seem useful to assert that the number is exactly 54.
| * | libnmc-setting: allow the "match" setting for some port connectionsBeniamino Galvani2023-03-021-0/+4
| | | | | | | | | | | | | | | A {bond, bridge, team, ovs-port} port profile should support a "match" setting.
| * | platform: rename link_change() to link_change_extra()Beniamino Galvani2023-03-023-13/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are many functions to replace properties of a link (link_set_address, link_set_mtu, link_set_name, link_change, etc.). Eventually, they will be replaced by a function that does everything and removes all the code duplication. That function will be named link_change(); rename the current link_change() to link_change_extra().
| * | device: reconfigure ethtool and tc also for assumed devicesBeniamino Galvani2023-03-021-2/+2
|/ / | | | | | | | | | | We need to set the ethtool and tc properties for assumed devices, since they go through a normal activation. External devices should not be touched by NM.
* | settings: preserve existing connection flags on updatebg/connection-flagsBeniamino Galvani2023-03-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are passing to the plugin only 'sett_flags', which is the bitmask of flags to change and works together with 'sett_mask'; however, plugins interpret that value as the new flags value. The result is that if there is no change needed (0/0), the existing flags are lost. Simple reproducer: ip link add dummy1 type dummy ip link set dummy1 up ip addr add dev dummy1 fd01::12/64 sleep 1 # now, a external connection is created by NM echo "BEFORE:" cat /run/NetworkManager/system-connections/dummy1.nmconnection | grep "nm-generated\|volatile\|external" # just add a new address to the interface to make it lose # the external flag ip addr add dev dummy1 172.25.42.1/24 sleep 1 echo "AFTER:" cat /run/NetworkManager/system-connections/dummy1.nmconnection | grep "nm-generated\|volatile\|external" Output: BEFORE: nm-generated=true volatile=true external=true AFTER: Fixes: d35d3c468a30 ('settings: rework tracking settings connections and settings plugins') https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1548
* | platform: fix bridge test with fake platformBeniamino Galvani2023-03-012-28/+85
| | | | | | | | | | | | Fixes: 5afb323ed8d4 ('platform/tests: add test for nm_platform_link_set_bridge_info()') https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1552
* | merge: branch 'fix-suiteb'Beniamino Galvani2023-03-011-0/+4
|\ \ | | | | | | | | | | | | nmcli: add WPA-EAP-SUITE-B-192 to SECURITY when ap is wpa-eap-suite-b-192 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1527
| * | nmcli: add WPA-EAP-SUITE-B-192 to SECURITYliaohanqin2023-03-011-0/+4
|/ /
* | platform/tests: add test for nm_platform_link_set_bridge_info()Thomas Haller2023-03-011-4/+48
| |
* | bridge: set vlan_filtering and vlan_default_pvid via netlinkVladislav Tsisyk2023-03-014-16/+106
| | | | | | | | | | | | | | This commit changes setting values of said attributes from writing string to sysfs to sending Netlink message. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1499
* | ifcfg-rh: fix wrong (transfer-full) annotation in internal codeThomas Haller2023-03-011-1/+1
| | | | | | | | | | | | The annotation is wrong. However, we don't generate gtk-doc/introspection data for such internal code, so it doesn't really matter.
* | build: add test for checking consistency of "nm-autoptr.h"Thomas Haller2023-02-283-2/+39
| |
* | libnm: add missing types to "nm-autoptr.h" headerThomas Haller2023-02-281-1/+7
| |
* | vapi: merge branch 'tintou/gir-fixes'Thomas Haller2023-02-286-24/+142
|\ \ | | | | | | | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1545
| * | vapi: add test for consistency of "vapi/NM-1.0.metadata"Thomas Haller2023-02-283-0/+36
| | |
| * | vapi: Add several namespace changes and more specific types for propertiesCorentin Noël2023-02-281-19/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add overrides for properties constants of new objects to allow to match them with their object type as it was the case for former objects. Specify the types of properties with element-types. Namespace Attributes so that they are logically sorted. Remove several skips to allow to use the entirety of the visible methods.
| * | libnm/connection: Add missing annotations to nm_connection_diffCorentin Noël2023-02-281-4/+29
| | | | | | | | | | | | | | | | | | | | | Allows to use this function in GObject introspected languages. Also workaround a current issue with the gtk-doc parser not taking nested element-type into account.
| * | libnm: Specify the main header in the .gir fileCorentin Noël2023-02-282-1/+2
|/ / | | | | | | Bindings compiling to C need to know which main header to include.
* | platform: merge branch 'th/platform-nl-extack-msg'Thomas Haller2023-02-2811-173/+279
|\ \ | | | | | | | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1543
| * | platform: minor refactoring of temporary-not-available routesThomas Haller2023-02-281-25/+38
| | | | | | | | | | | | | | | This will be used also for IPv4 addresses. Rename and make the function more generally useful.
| * | platform: get extack_msg innm_platform_ip_route_sync()Thomas Haller2023-02-281-3/+5
| | | | | | | | | | | | | | | | | | | | | Request the extack_msg for nm_platform_ip_route_add() call. Note that we (currently) don't do anything with it, however requesting it has no downsides. That is, the message already is heap allocated in the lower layers, so this only affects whether it will be returned up to nm_platform_ip_route_sync().
| * | platform: return extack message from add address/route operationsThomas Haller2023-02-289-46/+100
| | |
| * | platform: drop logging for unexpected sequence numberThomas Haller2023-02-281-14/+1
| | | | | | | | | | | | | | | | | | It is not clear how that information is relevant. Since it is also only logged when building with a non-default configure option, this doesn't seem useful. Drop it.
| * | platform: minor cleanup of event_seq_check()Thomas Haller2023-02-281-13/+16
| | | | | | | | | | | | | | | | | | - unindent the code by "continue" the loop for the irrelevant case. - fix indentation of comments. - avoid unnecessary g_strdup() call if the extack message is NULL.
| * | platform: log extack warning messages for netlink requestsThomas Haller2023-02-282-9/+22
| | | | | | | | | | | | | | | The extack can also be returned on success. In that case, they are warnings. Log them, it might be useful.
| * | platform: rename variables for extack messageThomas Haller2023-02-281-39/+39
| | | | | | | | | | | | | | | | | | | | | Consistently name those variables and parameters "extack_msg". The previous term "errmsg"/"msg" was not used consistently, and it is also not clear what message this really is. For netlink, it is well understood what Extended ACK means.
| * | platform/netlink: cleanup nla_strlcpy() to not wipe remaining bufferThomas Haller2023-02-282-27/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | strlcpy()/g_strlcpy() has a well understood behavior. nla_strlcpy() did not behave like that. Instead, it also used to always wipe the remainder of the string, similar to what strncpy() would do. True, if we do nla_strlcpy(obj->link.name, tb[IFLA_IFNAME], IFNAMSIZ); then we might want to clear the remainder and don't care about the overhead of writing up to 14 bytes unnecessarily... However, actually all callers of nla_strlcpy() either operate on a buffer that is already pre-inialized with zero, or they really don't care about the uninitialized memory after the string. So this was nowhere the desired behavior. Change nla_strlcpy() to not wipe the remainder of the buffer, so it behaves mostly like strlcpy()/g_strlcpy() and as one would expect. Add nla_strlcpy_wipe(), which on top of it also clears the remaining buffer. In that aspect, it bears some similarities with strncpy(), but it differs in other regards from strncpy (always NUL terminating and returning the srclen). Yes, the name nla_strlcpy_wipe() is maybe unfamiliar to the user, but it really is like nla_strlcpy() with the addition to clear the buffer. That seems simple enough to understand based on the name. Note that all existing callers of nla_strlcpy() do not care about clearing the memory, and the change in behavior is fine for them.
| * | platform/netlink: assert for valid string in nla_get_string()Thomas Haller2023-02-281-1/+12
|/ /
* | libnm: merge branch 'champtar:route-unreachable'Thomas Haller2023-02-283-3/+3
|\ \ | | | | | | | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1549
| * | platform/trivial: fix route type name (unavailable -> unreachable)Etienne Champetier2023-02-281-1/+1
| | | | | | | | | | | | Fixes: 766349879ed2 ('platform/trivial: add code comments for NMPGlobalTracker')
| * | doc: fix route type name (unavailable -> unreachable)Etienne Champetier2023-02-282-2/+2
|/ / | | | | | | Fixes: 1cc3d00cb76b ('libnm/doc: list route attributes in `man nm-settings-nmcli`')
* | libnm: drop _NMConnectionForEachSecretFunc from public headersThomas Haller2023-02-272-3/+2
| | | | | | | | | | | | It was always a private typedef. Not meant to be used. This was left over since commit e46d484fae9e ('libnm: hide NMSetting types from public headers')
* | cloud-setup: use nm_strv_dup_packed() in nm_http_client_poll_get()Thomas Haller2023-02-271-2/+7
| | | | | | | | | | No need to do a deep clone. The strv array is not ever modified and we pack it together in one memory allocation.
* | device: fix copy/paste error in nm-device-ip-tunnel.cBeniamino Galvani2023-02-271-2/+2
| | | | | | | | Fixes: 351c56249157 ('devices: support VTI tunnels')
* | po: update Georgian (ka) translationNorwayFun2023-02-271-1329/+1507
| | | | | | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1546
* | doc: fix documenting "carrier-wait-timeout" in NetworkManager-wait-online manualThomas Haller2023-02-241-1/+1
| | | | | | | | Fixes: df94cb211623 ('man: add NetworkManager-wait-online.service.8 manual')
* | platform: ensure ext-data is of expected typeThomas Haller2023-02-241-14/+23
| | | | | | | | | | | | | | | | We just lookup the link info by ifindex. There is no guarantee that that ifindex is of the expected type, to have a suitable ext-data. Check for that. Fixes: a7d2cad67eea ('platform/linux: add support for WPAN links')
* | merge: branch 'th/devcon-track-autoconnect'Fernando Fernandez Mancera2023-02-2314-238/+678
|\ \ | | | | | | | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1530
| * | utils: rename NM_SETTINGS_AUTO_CONNECT_* to NM_SETTINGS_AUTOCONNECT_*th/devcon-track-autoconnectFernando Fernandez Mancera2023-02-237-37/+37
| | |