summaryrefslogtreecommitdiffstats
path: root/dbus/dbus-server.c
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2003-03-15 04:25:09 +0000
committerHavoc Pennington <hp@redhat.com>2003-03-15 04:25:09 +0000
commit169238e99a4a163c89eb053250daeedf5f73e5cd (patch)
tree4b8f9af81765077fd9a227bae974924d905f182f /dbus/dbus-server.c
parent4c95a9782c65f88e2904c44abeb734a1b00f6353 (diff)
2003-03-14 Havoc Pennington <hp@pobox.com>
* bus/dispatch.c (bus_dispatch_test): do test using debug-pipe transport, tests more of the real codepath. Set up clients with bus_setup_debug_client. * bus/test.c (bus_setup_debug_client): function to set up debug "clients" on the main loop * dbus/dbus-transport.c (_dbus_transport_open): add debug-pipe support * dbus/dbus-server.c (dbus_server_listen): add debug-pipe server type * dbus/dbus-server-debug.c: support a debug server based on pipes * dbus/dbus-sysdeps.c (_dbus_full_duplex_pipe): new function (_dbus_close): new function * configure.in: check for socketpair
Diffstat (limited to 'dbus/dbus-server.c')
-rw-r--r--dbus/dbus-server.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/dbus/dbus-server.c b/dbus/dbus-server.c
index a5e5e2b7..80ee6fc2 100644
--- a/dbus/dbus-server.c
+++ b/dbus/dbus-server.c
@@ -25,6 +25,7 @@
#include "dbus-server-unix.h"
#ifdef DBUS_BUILD_TESTS
#include "dbus-server-debug.h"
+#include "dbus-server-debug-pipe.h"
#endif
#include "dbus-address.h"
@@ -275,6 +276,18 @@ dbus_server_listen (const char *address,
if (server)
break;
}
+ else if (strcmp (method, "debug-pipe") == 0)
+ {
+ const char *name = dbus_address_entry_get_value (entries[i], "name");
+
+ if (name == NULL)
+ goto bad_address;
+
+ server = _dbus_server_debug_pipe_new (name, result);
+
+ if (server)
+ break;
+ }
#endif
else
goto bad_address;