[gconf] daemon: store daemon data in XDG_RUNTIME_DIR
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gconf] daemon: store daemon data in XDG_RUNTIME_DIR
- Date: Tue, 21 Feb 2012 22:51:18 +0000 (UTC)
commit 2895a09bc0666cf7b26190bdb648ad1f52c174da
Author: Ray Strode <rstrode redhat com>
Date: Fri Jun 10 18:47:41 2011 -0400
daemon: store daemon data in XDG_RUNTIME_DIR
If XDG_RUNTIME_DIR is available it's a much better
directory than /tmp since it ensures there's no
DoS possibilities
https://bugzilla.gnome.org/show_bug.cgi?id=652289
gconf/gconf-internals.c | 19 ++++++++++++-------
1 files changed, 12 insertions(+), 7 deletions(-)
---
diff --git a/gconf/gconf-internals.c b/gconf/gconf-internals.c
index 9550b1a..784bcb3 100644
--- a/gconf/gconf-internals.c
+++ b/gconf/gconf-internals.c
@@ -2796,13 +2796,18 @@ gconf_get_daemon_dir (void)
const char *tmpdir;
subdir = g_strconcat ("gconfd-", g_get_user_name (), NULL);
-
- if (g_getenv ("GCONF_TMPDIR")) {
- tmpdir = g_getenv ("GCONF_TMPDIR");
- } else {
- tmpdir = g_get_tmp_dir ();
- }
-
+
+ if (g_getenv ("GCONF_TMPDIR"))
+ tmpdir = g_getenv ("GCONF_TMPDIR");
+ else if (g_getenv ("XDG_RUNTIME_DIR"))
+ {
+ g_free (subdir);
+ subdir = g_strdup ("gconfd");
+ tmpdir = g_getenv ("XDG_RUNTIME_DIR");
+ }
+ else
+ tmpdir = g_get_tmp_dir ();
+
s = g_build_filename (tmpdir, subdir, NULL);
g_free (subdir);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]