diff options
author | Thomas Haller <thaller@redhat.com> | 2020-03-26 12:47:37 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2020-04-04 19:51:34 +0200 |
commit | 68328e0f2146e467f530519931cdd2e84f63bacf (patch) | |
tree | d9429842a3c536af5ebf6a26c3eada4ce6f2adef /libnm-core/nm-setting-vpn.c | |
parent | 40e2603d4c9bad6c2b17725bd08ef0b75950e741 (diff) | |
download | NetworkManager-68328e0f2146e467f530519931cdd2e84f63bacf.tar.gz |
libnm: fail get_secret_flags(),set_secret_flags() for empty secret name in NMSettingVpn
Diffstat (limited to 'libnm-core/nm-setting-vpn.c')
-rw-r--r-- | libnm-core/nm-setting-vpn.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libnm-core/nm-setting-vpn.c b/libnm-core/nm-setting-vpn.c index a4a2afd5ff..6d255b5c8e 100644 --- a/libnm-core/nm-setting-vpn.c +++ b/libnm-core/nm-setting-vpn.c @@ -715,6 +715,14 @@ get_secret_flags (NMSetting *setting, const char *flags_val; gint64 i64; + nm_assert (secret_name); + + if (!secret_name[0]) { + g_set_error (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_PROPERTY_NOT_SECRET, + _("secret name cannot be empty")); + return FALSE; + } + flags_key = nm_construct_name_a ("%s-flags", secret_name, &flags_key_free); if (!g_hash_table_lookup_extended (priv->data, flags_key, NULL, (gpointer *) &flags_val)) { @@ -755,6 +763,14 @@ set_secret_flags (NMSetting *setting, NMSettingSecretFlags flags, GError **error) { + nm_assert (secret_name); + + if (!secret_name[0]) { + g_set_error (error, NM_CONNECTION_ERROR, NM_CONNECTION_ERROR_PROPERTY_NOT_SECRET, + _("secret name cannot be empty")); + return FALSE; + } + g_hash_table_insert (NM_SETTING_VPN_GET_PRIVATE (setting)->data, g_strdup_printf ("%s-flags", secret_name), g_strdup_printf ("%u", flags)); |