diff options
| author | Michael Biebl <biebl@debian.org> | 2025-02-28 17:38:21 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2025-02-28 17:38:21 +0100 |
| commit | 625e8ce60e826bde943487b8238884a9232e4562 (patch) | |
| tree | 4c1f0f88c466c69c27fc9ffbe787cc7d0964d630 /src/nm-cloud-setup/nmcs-provider.c | |
| parent | 8bdf070ff046f482f6eb5e2b15ebc216f5d1e3da (diff) | |
New upstream version 1.52.0 upstream/1.52.0
Diffstat (limited to 'src/nm-cloud-setup/nmcs-provider.c')
| -rw-r--r-- | src/nm-cloud-setup/nmcs-provider.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/nm-cloud-setup/nmcs-provider.c b/src/nm-cloud-setup/nmcs-provider.c index 0f06c4e2..251749ba 100644 --- a/src/nm-cloud-setup/nmcs-provider.c +++ b/src/nm-cloud-setup/nmcs-provider.c @@ -188,6 +188,7 @@ nmcs_provider_get_config_iface_data_create(NMCSProviderGetConfigTaskData *get_co iface_data = g_slice_new(NMCSProviderGetConfigIfaceData); *iface_data = (NMCSProviderGetConfigIfaceData) { + .provider = g_object_ref(get_config_data->self), .get_config_data = get_config_data, .hwaddr = g_strdup(hwaddr), .iface_idx = -1, @@ -203,6 +204,11 @@ nmcs_provider_get_config_iface_data_create(NMCSProviderGetConfigTaskData *get_co iface_data->priv.aliyun = (typeof(iface_data->priv.aliyun)) { .has_primary_ip_address = FALSE, }; + } else if (G_OBJECT_TYPE(get_config_data->self) == nmcs_provider_oci_get_type()) { + iface_data->priv.oci = (typeof(iface_data->priv.oci)) { + .vlan_tag = 0, + .parent_hwaddr = NULL, + }; } /* the has does not own the key (iface_datta->hwaddr), the lifetime of the @@ -220,6 +226,9 @@ _iface_data_free(gpointer data) g_free(iface_data->ipv4s_arr); nm_g_ptr_array_unref(iface_data->iproutes); g_free((char *) iface_data->hwaddr); + if (G_OBJECT_TYPE(iface_data->provider) == nmcs_provider_oci_get_type()) + g_free((char *) iface_data->priv.oci.parent_hwaddr); + g_clear_object(&iface_data->provider); nm_g_slice_free(iface_data); } |