Consistently include <config.h> in all C source files and never in header files.
[platform/upstream/dbus.git] / test / name-test / test-privserver-client.c
index 9a1eae8..d02eea8 100644 (file)
@@ -1,3 +1,4 @@
+#include <config.h>
 #include "../test-utils.h"
 
 static void
@@ -27,7 +28,7 @@ filter_private_message (DBusConnection     *connection,
 }
 
 static void
-open_shutdown_private_connection ()
+open_shutdown_private_connection (dbus_bool_t use_guid)
 {
   DBusError error;
   DBusLoop *loop;
@@ -35,7 +36,8 @@ open_shutdown_private_connection ()
   DBusMessage *msg;
   DBusMessage *reply;
   DBusConnection *privconn;
-  const char *addr;
+  char *addr;
+  char *comma;
 
   dbus_error_init (&error);
 
@@ -45,9 +47,9 @@ open_shutdown_private_connection ()
   if (!session)
     die ("couldn't access session bus\n");
   dbus_connection_set_exit_on_disconnect (session, FALSE);
-  msg = dbus_message_new_method_call ("org.freedesktop.DBus.TestSuite.TestServer",
+  msg = dbus_message_new_method_call ("org.freedesktop.DBus.TestSuite.PrivServer",
                                       "/",
-                                      "org.freedesktop.DBus.TestSuite.TestServer",
+                                      "org.freedesktop.DBus.TestSuite.PrivServer",
                                       "GetPrivateAddress");
   if (!(reply = dbus_connection_send_with_reply_and_block (session, msg, -1, &error)))
     die ("couldn't send message: %s\n", error.message);
@@ -55,8 +57,15 @@ open_shutdown_private_connection ()
   if (!dbus_message_get_args (reply, &error, DBUS_TYPE_STRING, &addr, DBUS_TYPE_INVALID))
     die ("couldn't parse message replym\n");
   printf ("got private temp address %s\n", addr);
-
+  addr = strdup (addr);
+  if (!use_guid)
+    {
+      char *comma = strrchr (addr, ',');
+      if (comma)
+        *comma = '\0';
+    }
   privconn = dbus_connection_open (addr, &error);
+  free (addr);
   if (!privconn)
     die ("couldn't connect to server direct connection: %s\n", error.message);
   dbus_message_unref (reply);
@@ -65,9 +74,9 @@ open_shutdown_private_connection ()
   dbus_connection_add_filter (privconn, filter_private_message, loop, NULL);
   test_connection_setup (loop, privconn);
 
-  msg = dbus_message_new_method_call ("org.freedesktop.DBus.TestSuite.TestServer",
+  msg = dbus_message_new_method_call ("org.freedesktop.DBus.TestSuite.PrivServer",
                                       "/",
-                                      "org.freedesktop.DBus.TestSuite.TestServer",
+                                      "org.freedesktop.DBus.TestSuite.PrivServer",
                                       "Quit");
   if (!dbus_connection_send (session, msg, NULL))
     die ("couldn't send Quit message\n");
@@ -88,15 +97,21 @@ open_shutdown_private_connection ()
 int
 main (int argc, char *argv[])
 {
-  open_shutdown_private_connection ();
+  open_shutdown_private_connection (TRUE);
+
+  dbus_shutdown ();
+
+  open_shutdown_private_connection (TRUE);
+
+  dbus_shutdown ();
+
+  open_shutdown_private_connection (FALSE);
 
   dbus_shutdown ();
 
-  /*
-  open_shutdown_private_connection ();
+  open_shutdown_private_connection (FALSE);
 
   dbus_shutdown ();
-  */
 
   return 0;
 }