diff options
Diffstat (limited to 'bus')
-rw-r--r-- | bus/bus.c | 20 | ||||
-rw-r--r-- | bus/bus.h | 4 | ||||
-rw-r--r-- | bus/main.c | 16 | ||||
-rw-r--r-- | bus/test.c | 5 |
4 files changed, 24 insertions, 21 deletions
@@ -527,8 +527,8 @@ process_config_postinit (BusContext *context, BusContext* bus_context_new (const DBusString *config_file, ForceForkSetting force_fork, - int print_addr_fd, - int print_pid_fd, + DBusPipe print_addr_fd, + DBusPipe print_pid_fd, DBusError *error) { BusContext *context; @@ -603,7 +603,7 @@ bus_context_new (const DBusString *config_file, * other random thing. But I think the answer is "don't do * that then" */ - if (print_addr_fd >= 0) + if (_dbus_pipe_is_valid(print_addr_fd)) { DBusString addr; const char *a = bus_context_get_address (context); @@ -625,7 +625,7 @@ bus_context_new (const DBusString *config_file, } bytes = _dbus_string_get_length (&addr); - if (_dbus_write_pipe (print_addr_fd, &addr, 0, bytes) != bytes) + if (_dbus_pipe_write(print_addr_fd, &addr, 0, bytes) != bytes) { dbus_set_error (error, DBUS_ERROR_FAILED, "Printing message bus address: %s\n", @@ -634,8 +634,8 @@ bus_context_new (const DBusString *config_file, goto failed; } - if (print_addr_fd > 2) - _dbus_close_socket (print_addr_fd, NULL); + if (_dbus_pipe_is_special(print_addr_fd)) + _dbus_pipe_close(print_addr_fd, NULL); _dbus_string_free (&addr); } @@ -706,7 +706,7 @@ bus_context_new (const DBusString *config_file, } /* Write PID if requested */ - if (print_pid_fd >= 0) + if (_dbus_pipe_is_valid(print_pid_fd)) { DBusString pid; int bytes; @@ -726,7 +726,7 @@ bus_context_new (const DBusString *config_file, } bytes = _dbus_string_get_length (&pid); - if (_dbus_write_pipe (print_pid_fd, &pid, 0, bytes) != bytes) + if (_dbus_pipe_write (print_pid_fd, &pid, 0, bytes) != bytes) { dbus_set_error (error, DBUS_ERROR_FAILED, "Printing message bus PID: %s\n", @@ -735,8 +735,8 @@ bus_context_new (const DBusString *config_file, goto failed; } - if (print_pid_fd > 2) - _dbus_close_socket (print_pid_fd, NULL); + if (_dbus_pipe_is_special (print_pid_fd)) + _dbus_pipe_close (print_pid_fd, NULL); _dbus_string_free (&pid); } @@ -70,8 +70,8 @@ typedef enum BusContext* bus_context_new (const DBusString *config_file, ForceForkSetting force_fork, - int print_addr_fd, - int print_pid_fd, + DBusPipe print_addr_fd, + DBusPipe print_pid_fd, DBusError *error); dbus_bool_t bus_context_reload_config (BusContext *context, DBusError *error); @@ -247,8 +247,8 @@ main (int argc, char **argv) DBusString addr_fd; DBusString pid_fd; const char *prev_arg; - int print_addr_fd; - int print_pid_fd; + DBusPipe print_addr_fd; + DBusPipe print_pid_fd; int i; dbus_bool_t print_address; dbus_bool_t print_pid; @@ -387,10 +387,10 @@ main (int argc, char **argv) usage (); } - print_addr_fd = -1; + print_addr_fd = _dbus_pipe_init(-1); if (print_address) { - print_addr_fd = 1; /* stdout */ + print_addr_fd = _dbus_pipe_init(1); /* stdout */ if (_dbus_string_get_length (&addr_fd) > 0) { long val; @@ -404,15 +404,15 @@ main (int argc, char **argv) exit (1); } - print_addr_fd = val; + print_addr_fd = _dbus_pipe_init(val); } } _dbus_string_free (&addr_fd); - print_pid_fd = -1; + print_pid_fd = _dbus_pipe_init(-1); if (print_pid) { - print_pid_fd = 1; /* stdout */ + print_pid_fd = _dbus_pipe_init(1); /* stdout */ if (_dbus_string_get_length (&pid_fd) > 0) { long val; @@ -426,7 +426,7 @@ main (int argc, char **argv) exit (1); } - print_pid_fd = val; + print_pid_fd = _dbus_pipe_init(val); } } _dbus_string_free (&pid_fd); @@ -27,6 +27,7 @@ #include "test.h" #include <dbus/dbus-internals.h> #include <dbus/dbus-list.h> +#include <dbus/dbus-sysdeps.h> /* The "debug client" watch/timeout handlers don't dispatch messages, * as we manually pull them in order to verify them. This is why they @@ -297,6 +298,7 @@ bus_context_new_test (const DBusString *test_data_dir, DBusString config_file; DBusString relative; BusContext *context; + DBusPipe pipe; if (!_dbus_string_init (&config_file)) { @@ -322,7 +324,8 @@ bus_context_new_test (const DBusString *test_data_dir, } dbus_error_init (&error); - context = bus_context_new (&config_file, FALSE, -1, -1, &error); + pipe = _dbus_pipe_init(-1); + context = bus_context_new (&config_file, FALSE, pipe, pipe, &error); if (context == NULL) { _DBUS_ASSERT_ERROR_IS_SET (&error); |