agents: add nm_agent_manager_get_agent_by_user()

Return any registered agent for a given username.
This commit is contained in:
Dan Williams 2011-07-01 14:36:01 -05:00
parent ded905ceb1
commit 2420c37e24
2 changed files with 21 additions and 0 deletions

View file

@ -1342,6 +1342,24 @@ nm_agent_manager_delete_secrets (NMAgentManager *self,
/*************************************************************/
NMSecretAgent *
nm_agent_manager_get_agent_by_user (NMAgentManager *self, const char *username)
{
NMAgentManagerPrivate *priv = NM_AGENT_MANAGER_GET_PRIVATE (self);
GHashTableIter iter;
NMSecretAgent *agent;
g_hash_table_iter_init (&iter, priv->agents);
while (g_hash_table_iter_next (&iter, NULL, (gpointer) &agent)) {
if (g_strcmp0 (nm_secret_agent_get_owner_username (agent), username) == 0)
return agent;
}
return NULL;
}
/*************************************************************/
static void
name_owner_changed_cb (NMDBusManager *dbus_mgr,
const char *name,

View file

@ -89,4 +89,7 @@ guint32 nm_agent_manager_delete_secrets (NMAgentManager *manager,
gboolean filter_by_uid,
gulong uid_filter);
NMSecretAgent *nm_agent_manager_get_agent_by_user (NMAgentManager *manager,
const char *username);
#endif /* NM_AGENT_MANAGER_H */