From 754143f4e835f1b0b030145f48323b31c0e22cfd Mon Sep 17 00:00:00 2001 From: Fernando Fernandez Mancera Date: Tue, 1 Jun 2021 18:34:16 +0200 Subject: [PATCH] libnm: introduce the new get_ports() in bridge/bond API This patch is introducing get_ports() in bridge and bond API. In addition, the existing get_slaves() functions are being marked as deprecated. Signed-off-by: Fernando Fernandez Mancera https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/878 --- src/libnm-client-impl/libnm.ver | 2 ++ src/libnm-client-impl/nm-device-bond.c | 20 ++++++++++++++++++++ src/libnm-client-impl/nm-device-bridge.c | 20 ++++++++++++++++++++ src/libnm-client-public/nm-device-bond.h | 7 ++++++- src/libnm-client-public/nm-device-bridge.h | 7 ++++++- 5 files changed, 54 insertions(+), 2 deletions(-) diff --git a/src/libnm-client-impl/libnm.ver b/src/libnm-client-impl/libnm.ver index 3637f1b840..8bd8800fcb 100644 --- a/src/libnm-client-impl/libnm.ver +++ b/src/libnm-client-impl/libnm.ver @@ -1787,6 +1787,8 @@ global: libnm_1_32_0 { global: + nm_device_bond_get_ports; + nm_device_bridge_get_ports; nm_ethtool_optname_is_pause; nm_setting_match_new; nm_setting_wired_get_accept_all_mac_addresses; diff --git a/src/libnm-client-impl/nm-device-bond.c b/src/libnm-client-impl/nm-device-bond.c index 48dfd9b2b2..42108fd9fc 100644 --- a/src/libnm-client-impl/nm-device-bond.c +++ b/src/libnm-client-impl/nm-device-bond.c @@ -83,9 +83,29 @@ nm_device_bond_get_carrier(NMDeviceBond *device) * Returns: (element-type NMDevice): the #GPtrArray containing * #NMDevices that are slaves of @device. This is the internal * copy used by the device, and must not be modified. + * + * Deprecated: 1.32: Use nm_device_bond_get_ports(). **/ const GPtrArray * nm_device_bond_get_slaves(NMDeviceBond *device) +{ + return nm_device_bond_get_ports(device); +} + +/** + * nm_device_bond_get_ports: + * @device: a #NMDeviceBond + * + * Gets the devices currently set as port of @device. + * + * Returns: (element-type NMDevice): the #GPtrArray containing + * #NMDevices that are ports of @device. This is the internal + * copy used by the device, and must not be modified. + * + * Since: 1.32 + **/ +const GPtrArray * +nm_device_bond_get_ports(NMDeviceBond *device) { g_return_val_if_fail(NM_IS_DEVICE_BOND(device), FALSE); diff --git a/src/libnm-client-impl/nm-device-bridge.c b/src/libnm-client-impl/nm-device-bridge.c index 9bc41ac896..950f8c36d8 100644 --- a/src/libnm-client-impl/nm-device-bridge.c +++ b/src/libnm-client-impl/nm-device-bridge.c @@ -82,9 +82,29 @@ nm_device_bridge_get_carrier(NMDeviceBridge *device) * Returns: (element-type NMDevice): the #GPtrArray containing * #NMDevices that are slaves of @device. This is the internal * copy used by the device, and must not be modified. + * + * Deprecated: 1.32: Use nm_device_bridge_get_ports(). **/ const GPtrArray * nm_device_bridge_get_slaves(NMDeviceBridge *device) +{ + return nm_device_bridge_get_ports(device); +} + +/** + * nm_device_bridge_get_ports: + * @device: a #NMDeviceBridge + * + * Gets the devices currently set as port of @device. + * + * Returns: (element-type NMDevice): the #GPtrArray containing + * #NMDevices that are ports of @device. This is the internal + * copy used by the device, and must not be modified. + * + * Since: 1.32 + **/ +const GPtrArray * +nm_device_bridge_get_ports(NMDeviceBridge *device) { g_return_val_if_fail(NM_IS_DEVICE_BRIDGE(device), FALSE); diff --git a/src/libnm-client-public/nm-device-bond.h b/src/libnm-client-public/nm-device-bond.h index 91c023a4b5..77c4f2a73c 100644 --- a/src/libnm-client-public/nm-device-bond.h +++ b/src/libnm-client-public/nm-device-bond.h @@ -37,7 +37,12 @@ GType nm_device_bond_get_type(void); NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address) const char *nm_device_bond_get_hw_address(NMDeviceBond *device); -gboolean nm_device_bond_get_carrier(NMDeviceBond *device); +gboolean nm_device_bond_get_carrier(NMDeviceBond *device); + +NM_AVAILABLE_IN_1_32 +const GPtrArray *nm_device_bond_get_ports(NMDeviceBond *device); + +NM_DEPRECATED_IN_1_32_FOR(nm_device_get_ports) const GPtrArray *nm_device_bond_get_slaves(NMDeviceBond *device); G_END_DECLS diff --git a/src/libnm-client-public/nm-device-bridge.h b/src/libnm-client-public/nm-device-bridge.h index a6c50658a0..af25cbc2e6 100644 --- a/src/libnm-client-public/nm-device-bridge.h +++ b/src/libnm-client-public/nm-device-bridge.h @@ -38,7 +38,12 @@ GType nm_device_bridge_get_type(void); NM_DEPRECATED_IN_1_24_FOR(nm_device_get_hw_address) const char *nm_device_bridge_get_hw_address(NMDeviceBridge *device); -gboolean nm_device_bridge_get_carrier(NMDeviceBridge *device); +gboolean nm_device_bridge_get_carrier(NMDeviceBridge *device); + +NM_AVAILABLE_IN_1_32 +const GPtrArray *nm_device_bridge_get_ports(NMDeviceBridge *device); + +NM_DEPRECATED_IN_1_32_FOR(nm_device_bridge_get_ports) const GPtrArray *nm_device_bridge_get_slaves(NMDeviceBridge *device); G_END_DECLS