mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-28 07:30:10 +01:00
libnm-util: ensure empty VPN secrets are not used (rh #587784)
This commit is contained in:
parent
3d4b6163b9
commit
6893b3d0dd
1 changed files with 12 additions and 2 deletions
|
|
@ -248,6 +248,7 @@ static gboolean
|
|||
update_one_secret (NMSetting *setting, const char *key, GValue *value, GError **error)
|
||||
{
|
||||
NMSettingVPNPrivate *priv = NM_SETTING_VPN_GET_PRIVATE (setting);
|
||||
char *str;
|
||||
|
||||
g_return_val_if_fail (key != NULL, FALSE);
|
||||
g_return_val_if_fail (value != NULL, FALSE);
|
||||
|
|
@ -259,8 +260,17 @@ update_one_secret (NMSetting *setting, const char *key, GValue *value, GError **
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
g_hash_table_insert (priv->secrets, g_strdup (key), g_value_dup_string (value));
|
||||
return FALSE;
|
||||
str = g_value_dup_string (value);
|
||||
if (!str || !strlen (str)) {
|
||||
g_set_error (error, NM_SETTING_ERROR,
|
||||
NM_SETTING_ERROR_PROPERTY_TYPE_MISMATCH,
|
||||
"Secret %s was empty", key);
|
||||
g_free (str);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
g_hash_table_insert (priv->secrets, g_strdup (key), str);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue