summaryrefslogtreecommitdiffstats
path: root/bus/activation.c
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2003-04-03 05:22:49 +0000
committerHavoc Pennington <hp@redhat.com>2003-04-03 05:22:49 +0000
commiteeb88949d8d2ca84d9cbe54c07e73b9907d3163e (patch)
tree9520b0d32fd0c105f41619f8d247a298f93caf9c /bus/activation.c
parent5364beac6cbfa8793fd34c7a634528a2112787f8 (diff)
2003-04-03 Havoc Pennington <hp@pobox.com>
* bus/config-parser.c (bus_config_parser_unref): free list of mechanisms, bug discovered by test suite enhancements (putting system.conf and session.conf into suite) * test/Makefile.am, test/test-service.c: add placeholder for a test service that we'll activate as part of test suite. Doesn't do anything yet. * dbus/dbus-sysdeps.c (_dbus_setenv): support unsetenv by setting NULL value, and use system malloc not dbus_malloc() when we have unavoidable memleakage. * dbus/dbus-bus.c (dbus_bus_get): fix bug where bus type of 0 didn't work, and support DBUS_BUS_ACTIVATION. * bus/activation.c (child_setup): pass our well-known bus type to the child * bus/config-parser.c: support <type> to specify well-known type * doc/dbus-specification.sgml: document the env variables to locate well-known buses and find service activator
Diffstat (limited to 'bus/activation.c')
-rw-r--r--bus/activation.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/bus/activation.c b/bus/activation.c
index 0dfce3f8..eb56a744 100644
--- a/bus/activation.c
+++ b/bus/activation.c
@@ -404,12 +404,20 @@ static void
child_setup (void *data)
{
BusActivation *activation = data;
+ const char *type;
/* If no memory, we simply have the child exit, so it won't try
* to connect to the wrong thing.
*/
- if (!_dbus_setenv ("DBUS_ADDRESS", activation->server_address))
+ if (!_dbus_setenv ("DBUS_ACTIVATION_ADDRESS", activation->server_address))
_dbus_exit (1);
+
+ type = bus_context_get_type (activation->context);
+ if (type != NULL)
+ {
+ if (!_dbus_setenv ("DBUS_BUS_TYPE", type))
+ _dbus_exit (1);
+ }
}
dbus_bool_t