core/vpn: mark secret hints as const

This commit is contained in:
Thomas Haller
2017-11-17 22:34:02 +01:00
parent c09a069ca3
commit f76dbfc1a6
5 changed files with 22 additions and 18 deletions

View File

@@ -1213,7 +1213,7 @@ nm_agent_manager_get_secrets (NMAgentManager *self,
GVariant *existing_secrets, GVariant *existing_secrets,
const char *setting_name, const char *setting_name,
NMSecretAgentGetSecretsFlags flags, NMSecretAgentGetSecretsFlags flags,
const char **hints, const char *const*hints,
NMAgentSecretsResultFunc callback, NMAgentSecretsResultFunc callback,
gpointer callback_data) gpointer callback_data)
{ {

View File

@@ -60,7 +60,7 @@ NMAgentManagerCallId nm_agent_manager_get_secrets (NMAgentManager *manager,
GVariant *existing_secrets, GVariant *existing_secrets,
const char *setting_name, const char *setting_name,
NMSecretAgentGetSecretsFlags flags, NMSecretAgentGetSecretsFlags flags,
const char **hints, const char *const*hints,
NMAgentSecretsResultFunc callback, NMAgentSecretsResultFunc callback,
gpointer callback_data); gpointer callback_data);

View File

@@ -1228,7 +1228,7 @@ nm_settings_connection_get_secrets (NMSettingsConnection *self,
NMAuthSubject *subject, NMAuthSubject *subject,
const char *setting_name, const char *setting_name,
NMSecretAgentGetSecretsFlags flags, NMSecretAgentGetSecretsFlags flags,
const char **hints, const char *const*hints,
NMSettingsConnectionSecretsFunc callback, NMSettingsConnectionSecretsFunc callback,
gpointer callback_data) gpointer callback_data)
{ {

View File

@@ -167,7 +167,7 @@ NMSettingsConnectionCallId nm_settings_connection_get_secrets (NMSettingsConnect
NMAuthSubject *subject, NMAuthSubject *subject,
const char *setting_name, const char *setting_name,
NMSecretAgentGetSecretsFlags flags, NMSecretAgentGetSecretsFlags flags,
const char **hints, const char *const*hints,
NMSettingsConnectionSecretsFunc callback, NMSettingsConnectionSecretsFunc callback,
gpointer callback_data); gpointer callback_data);

View File

@@ -185,13 +185,13 @@ static NMSettingsConnection *_get_settings_connection (NMVpnConnection *self,
static void get_secrets (NMVpnConnection *self, static void get_secrets (NMVpnConnection *self,
SecretsReq secrets_idx, SecretsReq secrets_idx,
const char **hints); const char *const*hints);
static guint32 get_route_table (NMVpnConnection *self, int addr_family, gboolean fallback_main); static guint32 get_route_table (NMVpnConnection *self, int addr_family, gboolean fallback_main);
static void plugin_interactive_secrets_required (NMVpnConnection *self, static void plugin_interactive_secrets_required (NMVpnConnection *self,
const char *message, const char *message,
const char **secrets); const char *const*secrets);
static void _set_vpn_state (NMVpnConnection *self, static void _set_vpn_state (NMVpnConnection *self,
VpnState vpn_state, VpnState vpn_state,
@@ -2047,7 +2047,7 @@ state_changed_cb (GDBusProxy *proxy,
static void static void
secrets_required_cb (GDBusProxy *proxy, secrets_required_cb (GDBusProxy *proxy,
const char *message, const char *message,
const char **secrets, const char *const*secrets,
gpointer user_data) gpointer user_data)
{ {
NMVpnConnection *self = NM_VPN_CONNECTION (user_data); NMVpnConnection *self = NM_VPN_CONNECTION (user_data);
@@ -2638,7 +2638,7 @@ get_secrets_cb (NMSettingsConnection *connection,
static void static void
get_secrets (NMVpnConnection *self, get_secrets (NMVpnConnection *self,
SecretsReq secrets_idx, SecretsReq secrets_idx,
const char **hints) const char *const*hints)
{ {
NMVpnConnectionPrivate *priv = NM_VPN_CONNECTION_GET_PRIVATE (self); NMVpnConnectionPrivate *priv = NM_VPN_CONNECTION_GET_PRIVATE (self);
NMSecretAgentGetSecretsFlags flags = NM_SECRET_AGENT_GET_SECRETS_FLAG_NONE; NMSecretAgentGetSecretsFlags flags = NM_SECRET_AGENT_GET_SECRETS_FLAG_NONE;
@@ -2683,12 +2683,13 @@ get_secrets (NMVpnConnection *self,
static void static void
plugin_interactive_secrets_required (NMVpnConnection *self, plugin_interactive_secrets_required (NMVpnConnection *self,
const char *message, const char *message,
const char **secrets) const char *const*secrets)
{ {
NMVpnConnectionPrivate *priv = NM_VPN_CONNECTION_GET_PRIVATE (self); NMVpnConnectionPrivate *priv = NM_VPN_CONNECTION_GET_PRIVATE (self);
guint32 secrets_len = secrets ? g_strv_length ((char **) secrets) : 0; const gsize secrets_len = NM_PTRARRAY_LEN (secrets);
char **hints; gsize i;
guint32 i; gs_free const char **hints = NULL;
gs_free char *message_hint = NULL;
_LOGI ("VPN plugin: requested secrets; state %s (%d)", _LOGI ("VPN plugin: requested secrets; state %s (%d)",
vpn_state_to_string (priv->vpn_state), priv->vpn_state); vpn_state_to_string (priv->vpn_state), priv->vpn_state);
@@ -2700,14 +2701,17 @@ plugin_interactive_secrets_required (NMVpnConnection *self,
_set_vpn_state (self, STATE_NEED_AUTH, NM_ACTIVE_CONNECTION_STATE_REASON_NONE, FALSE); _set_vpn_state (self, STATE_NEED_AUTH, NM_ACTIVE_CONNECTION_STATE_REASON_NONE, FALSE);
/* Copy hints and add message to the end */ /* Copy hints and add message to the end */
hints = g_malloc0 (sizeof (char *) * (secrets_len + 2)); hints = g_new (const char *, secrets_len + 2);
for (i = 0; i < secrets_len; i++) for (i = 0; i < secrets_len; i++)
hints[i] = g_strdup (secrets[i]); hints[i] = secrets[i];
if (message) if (message) {
hints[i] = g_strdup_printf ("x-vpn-message:%s", message); message_hint = g_strdup_printf ("x-vpn-message:%s", message);
hints[i++] = message_hint;
}
hints[i] = NULL;
nm_assert (i < secrets_len + 2);
get_secrets (self, SECRETS_REQ_INTERACTIVE, (const char **) hints); get_secrets (self, SECRETS_REQ_INTERACTIVE, hints);
g_strfreev (hints);
} }
/*****************************************************************************/ /*****************************************************************************/