daemon: enviroment variable support is added to daemon server socket address.
authorAmarnath Valluri <amarnath.valluri@linux.intel.com>
Thu, 24 Oct 2013 11:58:59 +0000 (14:58 +0300)
committerAmarnath Valluri <amarnath.valluri@linux.intel.com>
Thu, 7 Nov 2013 15:03:54 +0000 (17:03 +0200)
First we check if MESSAGEPORT_BUS_ADDRESS variable is set to any socket path,
if yes then daemon runs on that address, else uses configured bus address.

daemon/dbus-server.c

index 7f3d01b..e5c2176 100644 (file)
@@ -37,10 +37,6 @@ G_DEFINE_TYPE (MsgPortDbusServer, msgport_dbus_server, G_TYPE_OBJECT)
 #define MSGPORT_DBUS_SERVER_GET_PRIV(obj) \
     G_TYPE_INSTANCE_GET_PRIVATE ((obj), MSGPORT_TYPE_DBUS_SERVER, MsgPortDbusServerPrivate)
 
-#ifndef MESSAGEPORT_BUS_ADDRESS
-#   define MESSAGEPORT_BUS_ADDRESS "unix:path=%s/.message-port"
-#endif /* MESSAGEPORT_BUS_ADDRESS */
-
 enum
 {
     PROP_0,
@@ -289,7 +285,18 @@ MsgPortDbusServer * msgport_dbus_server_new_with_address (const gchar *address)
 MsgPortDbusServer *
 msgport_dbus_server_new () {
        MsgPortDbusServer *server = NULL;
-       gchar *address = g_strdup_printf (MESSAGEPORT_BUS_ADDRESS); //, g_get_user_runtime_dir());
+       gchar *address = NULL;
+
+    if (g_getenv("MESSAGEPORT_BUS_ADDRESS")) {
+        address = g_strdup (g_getenv ("MESSAGEPORT_BUS_ADDRESS"));
+    }
+    else {
+#       ifdef MESSAGEPORT_BUS_ADDRESS
+           address = g_strdup_printf (MESSAGEPORT_BUS_ADDRESS);
+#       endif
+    }
+    if (!address)
+        address = g_strdup_printf ("unix:path=%s/.message-port", g_get_user_runtime_dir());
 
     server = msgport_dbus_server_new_with_address (address);
     g_free (address);