summaryrefslogtreecommitdiffstats
path: root/dbus/dbus-spawn.h
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2003-04-05 00:37:17 +0000
committerHavoc Pennington <hp@redhat.com>2003-04-05 00:37:17 +0000
commit03b9ca6d4ecf2577958530b8390d675c73a58825 (patch)
treebe0569a447ef9acaf5a0004fb9bfe1a2022c9eb1 /dbus/dbus-spawn.h
parent45d1479fad0fb55f1775c394e696643dad3e8e4d (diff)
2003-04-04 Havoc Pennington <hp@redhat.com>
* dbus/dbus-spawn.c, dbus/dbus-spawn.h: Change dbus_spawn to return a "babysitter" object that is used to monitor the status of the spawned process and reap it when required. * test/test-segfault.c, test/test-exit.c, test/test-sleep-forever.c: binaries that do various lame things, used in the test suite. * dbus/dbus-sysdeps.c: kill _dbus_errno_to_string()
Diffstat (limited to 'dbus/dbus-spawn.h')
-rw-r--r--dbus/dbus-spawn.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/dbus/dbus-spawn.h b/dbus/dbus-spawn.h
index 04348d75..9cf108a7 100644
--- a/dbus/dbus-spawn.h
+++ b/dbus/dbus-spawn.h
@@ -27,9 +27,37 @@
#include <dbus/dbus-string.h>
#include <dbus/dbus-errors.h>
+#include <dbus/dbus-watch.h>
DBUS_BEGIN_DECLS;
+typedef void (* DBusSpawnChildSetupFunc) (void *user_data);
+
+typedef struct DBusBabysitter DBusBabysitter;
+
+dbus_bool_t _dbus_spawn_async_with_babysitter (DBusBabysitter **sitter_p,
+ char **argv,
+ DBusSpawnChildSetupFunc child_setup,
+ void *user_data,
+ DBusError *error);
+void _dbus_babysitter_ref (DBusBabysitter *sitter);
+void _dbus_babysitter_unref (DBusBabysitter *sitter);
+void _dbus_babysitter_kill_child (DBusBabysitter *sitter);
+dbus_bool_t _dbus_babysitter_get_child_exited (DBusBabysitter *sitter);
+void _dbus_babysitter_set_child_exit_error (DBusBabysitter *sitter,
+ DBusError *error);
+dbus_bool_t _dbus_babysitter_set_watch_functions (DBusBabysitter *sitter,
+ DBusAddWatchFunction add_function,
+ DBusRemoveWatchFunction remove_function,
+ DBusWatchToggledFunction toggled_function,
+ void *data,
+ DBusFreeFunction free_data_function);
+dbus_bool_t _dbus_babysitter_handle_watch (DBusBabysitter *sitter,
+ DBusWatch *watch,
+ unsigned int condition);
+
+
+
DBUS_END_DECLS;
#endif /* DBUS_SPAWN_H */