summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-08-11 03:54:57 +0200
committerRay Strode <rstrode@redhat.com>2009-08-11 17:45:15 -0400
commit242971667b66fea86d4cfb5a4d0a396e5a7b5e8b (patch)
treecf5538a6ef4877add5dd46e258243d27f0bf9e34
parent6d4959b9a573c55fe56bbaf2394f492384f19c67 (diff)
make CK database world readable
The CK database shall be readable by the D-Bus daemon which runs under its own user id hence make sure it is readable for non-root processes. To make sure this leaks no information this drops the session cookie from the database.
-rw-r--r--src/ck-manager.c2
-rw-r--r--src/ck-session-leader.c1
-rw-r--r--src/ck-session.c4
3 files changed, 1 insertions, 6 deletions
diff --git a/src/ck-manager.c b/src/ck-manager.c
index bb65d73..d5d2c65 100644
--- a/src/ck-manager.c
+++ b/src/ck-manager.c
@@ -200,7 +200,7 @@ ck_manager_dump (CkManager *manager)
return;
}
- fd = g_open (filename_tmp, O_CREAT | O_WRONLY, 0600);
+ fd = g_open (filename_tmp, O_CREAT | O_WRONLY, 0644);
if (fd == -1) {
g_warning ("Cannot create file %s: %s", filename_tmp, g_strerror (errno));
goto error;
diff --git a/src/ck-session-leader.c b/src/ck-session-leader.c
index 322b7fd..3702602 100644
--- a/src/ck-session-leader.c
+++ b/src/ck-session-leader.c
@@ -689,7 +689,6 @@ ck_session_leader_dump (CkSessionLeader *session_leader,
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);
diff --git a/src/ck-session.c b/src/ck-session.c
index 4009ee1..97e1ce2 100644
--- a/src/ck-session.c
+++ b/src/ck-session.c
@@ -1306,10 +1306,6 @@ ck_session_dump (CkSession *session,
group_name,
"seat",
NONULL_STRING (session->priv->seat_id));
- g_key_file_set_string (key_file,
- group_name,
- "cookie",
- NONULL_STRING (session->priv->cookie));
if (session->priv->session_type != NULL) {
g_key_file_set_string (key_file,
group_name,