diff options
author | Gris Ge <fge@redhat.com> | 2021-08-20 18:40:21 +0800 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2021-08-20 19:02:23 +0200 |
commit | e69c5e4bab126caeed6624735f143b5ae2645f93 (patch) | |
tree | ef6cd07ab6c1b3de7156e6c624fb6bbb3ca9bb97 /src/nmtui | |
parent | c265096d660e3d557399c8d3fc170e85fb137837 (diff) | |
download | NetworkManager-e69c5e4bab126caeed6624735f143b5ae2645f93.tar.gz |
libnm: Use _nm_connection_ensure_setting()
Use `_nm_connection_ensure_setting()` to eliminate the
duplicated codes. This function will retrieve the specific setting from
connection, if not found, create new one and attach to the connection.
Signed-off-by: Gris Ge <fge@redhat.com>
Diffstat (limited to 'src/nmtui')
-rw-r--r-- | src/nmtui/nmt-page-bond.c | 15 | ||||
-rw-r--r-- | src/nmtui/nmt-page-bridge-port.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-bridge.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-dsl.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-ethernet.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-infiniband.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-ip-tunnel.c | 7 | ||||
-rw-r--r-- | src/nmtui/nmt-page-ip4.c | 8 | ||||
-rw-r--r-- | src/nmtui/nmt-page-ip6.c | 8 | ||||
-rw-r--r-- | src/nmtui/nmt-page-team-port.c | 9 | ||||
-rw-r--r-- | src/nmtui/nmt-page-team.c | 9 | ||||
-rw-r--r-- | src/nmtui/nmt-page-vlan.c | 15 | ||||
-rw-r--r-- | src/nmtui/nmt-page-wifi.c | 10 | ||||
-rw-r--r-- | src/nmtui/nmt-page-wireguard.c | 8 |
14 files changed, 38 insertions, 86 deletions
diff --git a/src/nmtui/nmt-page-bond.c b/src/nmtui/nmt-page-bond.c index d3fab1ffda..aea7949ef5 100644 --- a/src/nmtui/nmt-page-bond.c +++ b/src/nmtui/nmt-page-bond.c @@ -334,20 +334,11 @@ nmt_page_bond_constructed(GObject *object) NmtNewtWidget * widget, *label; NMConnection * conn; - conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(bond)); - s_bond = nm_connection_get_setting_bond(conn); - if (!s_bond) { - nm_connection_add_setting(conn, nm_setting_bond_new()); - s_bond = nm_connection_get_setting_bond(conn); - } + conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(bond)); + s_bond = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_BOND); priv->s_bond = s_bond; - s_wired = nm_connection_get_setting_wired(conn); - if (!s_wired) { - nm_connection_add_setting(conn, nm_setting_wired_new()); - s_wired = nm_connection_get_setting_wired(conn); - } - + s_wired = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_WIRED); section = nmt_editor_section_new(_("BOND"), NULL, TRUE); grid = nmt_editor_section_get_body(section); diff --git a/src/nmtui/nmt-page-bridge-port.c b/src/nmtui/nmt-page-bridge-port.c index 30163d1524..2374bbb792 100644 --- a/src/nmtui/nmt-page-bridge-port.c +++ b/src/nmtui/nmt-page-bridge-port.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-bridge-port.h" @@ -35,11 +36,7 @@ nmt_page_bridge_port_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(bridge)); - s_port = nm_connection_get_setting_bridge_port(conn); - if (!s_port) { - nm_connection_add_setting(conn, nm_setting_bridge_port_new()); - s_port = nm_connection_get_setting_bridge_port(conn); - } + s_port = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_BRIDGE_PORT); section = nmt_editor_section_new(_("BRIDGE PORT"), NULL, TRUE); grid = nmt_editor_section_get_body(section); diff --git a/src/nmtui/nmt-page-bridge.c b/src/nmtui/nmt-page-bridge.c index 52af8db127..78c1b7c1e1 100644 --- a/src/nmtui/nmt-page-bridge.c +++ b/src/nmtui/nmt-page-bridge.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-bridge.h" @@ -53,11 +54,7 @@ nmt_page_bridge_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(bridge)); - s_bridge = nm_connection_get_setting_bridge(conn); - if (!s_bridge) { - nm_connection_add_setting(conn, nm_setting_bridge_new()); - s_bridge = nm_connection_get_setting_bridge(conn); - } + s_bridge = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_BRIDGE); section = nmt_editor_section_new(_("BRIDGE"), NULL, TRUE); grid = nmt_editor_section_get_body(section); diff --git a/src/nmtui/nmt-page-dsl.c b/src/nmtui/nmt-page-dsl.c index d7e0d144b5..700938f718 100644 --- a/src/nmtui/nmt-page-dsl.c +++ b/src/nmtui/nmt-page-dsl.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-dsl.h" #include "nmt-page-ethernet.h" @@ -83,11 +84,7 @@ nmt_page_dsl_constructed(GObject *object) const GSList * sections, *iter; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(dsl)); - s_pppoe = nm_connection_get_setting_pppoe(conn); - if (!s_pppoe) { - nm_connection_add_setting(conn, nm_setting_pppoe_new()); - s_pppoe = nm_connection_get_setting_pppoe(conn); - } + s_pppoe = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_PPPOE); section = build_dsl_section(dsl, s_pppoe); nmt_editor_page_add_section(NMT_EDITOR_PAGE(dsl), section); diff --git a/src/nmtui/nmt-page-ethernet.c b/src/nmtui/nmt-page-ethernet.c index f5dc91194a..8ff53d770a 100644 --- a/src/nmtui/nmt-page-ethernet.c +++ b/src/nmtui/nmt-page-ethernet.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-ethernet.h" @@ -42,11 +43,7 @@ nmt_page_ethernet_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(ethernet)); - s_wired = nm_connection_get_setting_wired(conn); - if (!s_wired) { - nm_connection_add_setting(conn, nm_setting_wired_new()); - s_wired = nm_connection_get_setting_wired(conn); - } + s_wired = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_WIRED); deventry = nmt_editor_page_device_get_device_entry(NMT_EDITOR_PAGE_DEVICE(object)); g_object_bind_property(s_wired, diff --git a/src/nmtui/nmt-page-infiniband.c b/src/nmtui/nmt-page-infiniband.c index c0e3611bdc..c192d7e125 100644 --- a/src/nmtui/nmt-page-infiniband.c +++ b/src/nmtui/nmt-page-infiniband.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-infiniband.h" #include "nmt-mtu-entry.h" @@ -46,11 +47,7 @@ nmt_page_infiniband_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(infiniband)); - s_ib = nm_connection_get_setting_infiniband(conn); - if (!s_ib) { - nm_connection_add_setting(conn, nm_setting_infiniband_new()); - s_ib = nm_connection_get_setting_infiniband(conn); - } + s_ib = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_INFINIBAND); /* initialize 'transport-mode' if it is NULL */ if (!nm_setting_infiniband_get_transport_mode(s_ib)) { g_object_set(G_OBJECT(s_ib), NM_SETTING_INFINIBAND_TRANSPORT_MODE, "datagram", NULL); diff --git a/src/nmtui/nmt-page-ip-tunnel.c b/src/nmtui/nmt-page-ip-tunnel.c index da6d12b9cc..88aa2149a6 100644 --- a/src/nmtui/nmt-page-ip-tunnel.c +++ b/src/nmtui/nmt-page-ip-tunnel.c @@ -8,6 +8,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-ip-tunnel.h" @@ -102,11 +103,7 @@ nmt_page_ip_tunnel_constructed(GObject *object) GClosure * s2w, *w2s; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(ip_tunnel)); - s_ip_tunnel = nm_connection_get_setting_ip_tunnel(conn); - if (!s_ip_tunnel) { - nm_connection_add_setting(conn, nm_setting_ip_tunnel_new()); - s_ip_tunnel = nm_connection_get_setting_ip_tunnel(conn); - } + s_ip_tunnel = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_IP_TUNNEL); /* Initialize the mode for new connections */ if (nm_setting_ip_tunnel_get_mode(s_ip_tunnel) == NM_IP_TUNNEL_MODE_UNKNOWN) { diff --git a/src/nmtui/nmt-page-ip4.c b/src/nmtui/nmt-page-ip4.c index ecd714473a..74da20f308 100644 --- a/src/nmtui/nmt-page-ip4.c +++ b/src/nmtui/nmt-page-ip4.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include <stdlib.h> @@ -84,14 +85,13 @@ nmt_page_ip4_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(ip4)); - s_ip4 = nm_connection_get_setting_ip4_config(conn); - if (!s_ip4) { - s_ip4 = (NMSettingIPConfig *) nm_setting_ip4_config_new(); + s_ip4 = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_IP4_CONFIG); + /* initialize 'method' to auto if it is NULL */ + if (!nm_setting_ip_config_get_method(s_ip4)) { g_object_set(G_OBJECT(s_ip4), NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL); - nm_connection_add_setting(conn, (NMSetting *) s_ip4); } widget = nmt_newt_popup_new(ip4methods); diff --git a/src/nmtui/nmt-page-ip6.c b/src/nmtui/nmt-page-ip6.c index f79c553db4..f142a38451 100644 --- a/src/nmtui/nmt-page-ip6.c +++ b/src/nmtui/nmt-page-ip6.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include <stdlib.h> @@ -85,14 +86,13 @@ nmt_page_ip6_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(ip6)); - s_ip6 = nm_connection_get_setting_ip6_config(conn); - if (!s_ip6) { - s_ip6 = (NMSettingIPConfig *) nm_setting_ip6_config_new(); + s_ip6 = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_IP6_CONFIG); + /* initialize 'method' to auto if it is NULL */ + if (!nm_setting_ip_config_get_method(s_ip6)) { g_object_set(G_OBJECT(s_ip6), NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP6_CONFIG_METHOD_AUTO, NULL); - nm_connection_add_setting(conn, (NMSetting *) s_ip6); } widget = nmt_newt_popup_new(ip6methods); diff --git a/src/nmtui/nmt-page-team-port.c b/src/nmtui/nmt-page-team-port.c index 13bb84f069..611cc2909d 100644 --- a/src/nmtui/nmt-page-team-port.c +++ b/src/nmtui/nmt-page-team-port.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-team-port.h" @@ -63,12 +64,8 @@ nmt_page_team_port_constructed(GObject *object) NmtNewtWidget * widget; NMConnection * conn; - conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(team)); - s_port = nm_connection_get_setting_team_port(conn); - if (!s_port) { - nm_connection_add_setting(conn, nm_setting_team_port_new()); - s_port = nm_connection_get_setting_team_port(conn); - } + conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(team)); + s_port = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_TEAM_PORT); priv->s_port = s_port; section = nmt_editor_section_new(_("TEAM PORT"), NULL, TRUE); diff --git a/src/nmtui/nmt-page-team.c b/src/nmtui/nmt-page-team.c index 3cda1257a7..28721c33f7 100644 --- a/src/nmtui/nmt-page-team.c +++ b/src/nmtui/nmt-page-team.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-team.h" @@ -111,12 +112,8 @@ nmt_page_team_constructed(GObject *object) NmtNewtWidget * widget; NMConnection * conn; - conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(team)); - s_team = nm_connection_get_setting_team(conn); - if (!s_team) { - nm_connection_add_setting(conn, nm_setting_team_new()); - s_team = nm_connection_get_setting_team(conn); - } + conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(team)); + s_team = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_TEAM); priv->s_team = s_team; section = nmt_editor_section_new(_("TEAM"), NULL, TRUE); diff --git a/src/nmtui/nmt-page-vlan.c b/src/nmtui/nmt-page-vlan.c index 299a726721..4a12efeda5 100644 --- a/src/nmtui/nmt-page-vlan.c +++ b/src/nmtui/nmt-page-vlan.c @@ -9,6 +9,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nm-editor-bindings.h" @@ -49,17 +50,9 @@ nmt_page_vlan_constructed(GObject *object) NmtNewtWidget * widget, *parent, *id_entry; NMConnection * conn; - conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(vlan)); - s_vlan = nm_connection_get_setting_vlan(conn); - if (!s_vlan) { - nm_connection_add_setting(conn, nm_setting_vlan_new()); - s_vlan = nm_connection_get_setting_vlan(conn); - } - s_wired = nm_connection_get_setting_wired(conn); - if (!s_wired) { - nm_connection_add_setting(conn, nm_setting_wired_new()); - s_wired = nm_connection_get_setting_wired(conn); - } + conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(vlan)); + s_vlan = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_VLAN); + s_wired = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_WIRED); section = nmt_editor_section_new(_("VLAN"), NULL, TRUE); grid = nmt_editor_section_get_body(section); diff --git a/src/nmtui/nmt-page-wifi.c b/src/nmtui/nmt-page-wifi.c index 247a0e4e3e..45edd6a700 100644 --- a/src/nmtui/nmt-page-wifi.c +++ b/src/nmtui/nmt-page-wifi.c @@ -13,6 +13,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include <stdlib.h> #include <linux/if_ether.h> @@ -164,13 +165,8 @@ nmt_page_wifi_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(wifi)); - s_wireless = nm_connection_get_setting_wireless(conn); - if (!s_wireless) { - nm_connection_add_setting(conn, nm_setting_wireless_new()); - s_wireless = nm_connection_get_setting_wireless(conn); - } - - s_wsec = nm_connection_get_setting_wireless_security(conn); + s_wireless = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_WIRELESS); + s_wsec = nm_connection_get_setting_wireless_security(conn); if (!s_wsec) { /* It makes things simpler if we always have a * NMSettingWirelessSecurity; we'll hold a ref on one, and add diff --git a/src/nmtui/nmt-page-wireguard.c b/src/nmtui/nmt-page-wireguard.c index 8b797d33c7..b60d8f40bd 100644 --- a/src/nmtui/nmt-page-wireguard.c +++ b/src/nmtui/nmt-page-wireguard.c @@ -8,6 +8,7 @@ */ #include "libnm-client-aux-extern/nm-default-client.h" +#include "libnm-core-aux-intern/nm-libnm-core-utils.h" #include "nmt-page-wireguard.h" @@ -51,12 +52,7 @@ nmt_page_wireguard_constructed(GObject *object) NMConnection * conn; conn = nmt_editor_page_get_connection(NMT_EDITOR_PAGE(wireguard)); - s_wireguard = NM_SETTING_WIREGUARD(nm_connection_get_setting(conn, NM_TYPE_SETTING_WIREGUARD)); - if (!s_wireguard) { - nm_connection_add_setting(conn, nm_setting_wireguard_new()); - s_wireguard = - NM_SETTING_WIREGUARD(nm_connection_get_setting(conn, NM_TYPE_SETTING_WIREGUARD)); - } + s_wireguard = _nm_connection_ensure_setting(conn, NM_TYPE_SETTING_WIREGUARD); section = nmt_editor_section_new(_("WireGuard"), NULL, TRUE); grid = nmt_editor_section_get_body(section); |