diff options
author | Thomas Haller <thaller@redhat.com> | 2019-12-31 03:37:48 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2020-01-02 09:17:34 +0100 |
commit | 7d2676919f79bac6c47226126039c27bae038f05 (patch) | |
tree | c26d791fec7a9fbeee820261aa3f0a371a5c13a9 | |
parent | 69db6df314fabfe34a77468291844812ed347fdb (diff) | |
download | NetworkManager-7d2676919f79bac6c47226126039c27bae038f05.tar.gz |
platform: support setting MAC address during nm_platform_link_gre_add()
We should set the MAC address of devices early on, and not later.
-rw-r--r-- | src/devices/nm-device-ip-tunnel.c | 7 | ||||
-rw-r--r-- | src/platform/nm-platform.h | 4 | ||||
-rw-r--r-- | src/platform/tests/test-common.c | 2 |
3 files changed, 10 insertions, 3 deletions
diff --git a/src/devices/nm-device-ip-tunnel.c b/src/devices/nm-device-ip-tunnel.c index 0becb5e568..c84ff3a587 100644 --- a/src/devices/nm-device-ip-tunnel.c +++ b/src/devices/nm-device-ip-tunnel.c @@ -702,7 +702,12 @@ create_and_realize (NMDevice *device, lnk_gre.output_flags = NM_GRE_KEY; } - r = nm_platform_link_gre_add (nm_device_get_platform (device), iface, &lnk_gre, out_plink); + r = nm_platform_link_gre_add (nm_device_get_platform (device), + iface, + NULL, + 0, + &lnk_gre, + out_plink); if (r < 0) { g_set_error (error, NM_DEVICE_ERROR, NM_DEVICE_ERROR_CREATION_FAILED, "Failed to create GRE interface '%s' for '%s': %s", diff --git a/src/platform/nm-platform.h b/src/platform/nm-platform.h index f2632a1fd0..8d1a3d3865 100644 --- a/src/platform/nm-platform.h +++ b/src/platform/nm-platform.h @@ -1387,12 +1387,14 @@ nm_platform_link_wireguard_add (NMPlatform *self, static inline int nm_platform_link_gre_add (NMPlatform *self, const char *name, + const void *address, + size_t address_len, const NMPlatformLnkGre *props, const NMPlatformLink **out_link) { g_return_val_if_fail (props, -NME_BUG); - return nm_platform_link_add (self, props->is_tap ? NM_LINK_TYPE_GRETAP : NM_LINK_TYPE_GRE, name, 0, NULL, 0, props, out_link); + return nm_platform_link_add (self, props->is_tap ? NM_LINK_TYPE_GRETAP : NM_LINK_TYPE_GRE, name, 0, address, address_len, props, out_link); } static inline int diff --git a/src/platform/tests/test-common.c b/src/platform/tests/test-common.c index 7d31e920b8..906deeada6 100644 --- a/src/platform/tests/test-common.c +++ b/src/platform/tests/test-common.c @@ -1265,7 +1265,7 @@ nmtstp_link_gre_add (NMPlatform *platform, if (success) pllink = nmtstp_assert_wait_for_link (platform, name, link_type, 100); } else - success = NMTST_NM_ERR_SUCCESS (nm_platform_link_gre_add (platform, name, lnk, &pllink)); + success = NMTST_NM_ERR_SUCCESS (nm_platform_link_gre_add (platform, name, NULL, 0, lnk, &pllink)); _assert_pllink (platform, success, pllink, name, link_type); |