diff options
| author | William Jon McCann <mccann@jhu.edu> | 2007-10-22 21:23:08 -0400 | 
|---|---|---|
| committer | William Jon McCann <mccann@jhu.edu> | 2007-10-22 21:23:08 -0400 | 
| commit | 7d167e65868cb2aa40273ee8ccd33cca5968438b (patch) | |
| tree | 1ba45f167c92e65b562add2204eb5caf8e32c9f4 /src | |
| parent | 7b65ac249a1e28c9af25eb91919d898c3e0f8162 (diff) | |
dump session leader info
Diffstat (limited to 'src')
| -rw-r--r-- | src/ck-manager.c | 9 | ||||
| -rw-r--r-- | src/ck-session-leader.c | 15 | 
2 files changed, 21 insertions, 3 deletions
diff --git a/src/ck-manager.c b/src/ck-manager.c index 396980c..5c77547 100644 --- a/src/ck-manager.c +++ b/src/ck-manager.c @@ -106,6 +106,14 @@ dump_state_session_iter (char      *id,          ck_session_dump (session, key_file);  } +static void +dump_state_leader_iter (char            *id, +                        CkSessionLeader *leader, +                        GKeyFile        *key_file) +{ +        ck_session_leader_dump (leader, key_file); +} +  static gboolean  do_dump (CkManager *manager,           int        fd) @@ -124,6 +132,7 @@ do_dump (CkManager *manager,          g_hash_table_foreach (manager->priv->seats, (GHFunc) dump_state_seat_iter, key_file);          g_hash_table_foreach (manager->priv->sessions, (GHFunc) dump_state_session_iter, key_file); +        g_hash_table_foreach (manager->priv->leaders, (GHFunc) dump_state_leader_iter, key_file);          str = g_key_file_to_data (key_file, &str_len, &error);          g_key_file_free (key_file); diff --git a/src/ck-session-leader.c b/src/ck-session-leader.c index d9bb375..756feac 100644 --- a/src/ck-session-leader.c +++ b/src/ck-session-leader.c @@ -50,14 +50,14 @@  struct CkSessionLeaderPrivate  { -        gboolean    cancelled; - +        char       *id;          uid_t       uid;          pid_t       pid;          char       *service_name;          char       *session_id;          char       *cookie;          GList      *pending_jobs; +        gboolean    cancelled;  };  enum { @@ -554,5 +554,14 @@ void  ck_session_leader_dump (CkSessionLeader *session_leader,                          GKeyFile        *key_file)  { -} +        char *group_name; + +        group_name = g_strdup_printf ("SessionLeader %s", session_leader->priv->session_id); +        g_key_file_set_string (key_file, group_name, "session", session_leader->priv->session_id); +        g_key_file_set_integer (key_file, group_name, "uid", session_leader->priv->uid); +        g_key_file_set_integer (key_file, group_name, "pid", session_leader->priv->pid); +        g_key_file_set_string (key_file, group_name, "cookie", session_leader->priv->cookie); +        g_key_file_set_string (key_file, group_name, "service_name", session_leader->priv->service_name); +        g_free (group_name); +}  | 
