? config.cache ? dbus-1.1.1.tar.gz ? test/data/valid-config-files/session.d ? test/name-test/run-with-tmp-session-bus.conf Index: ChangeLog =================================================================== RCS file: /cvs/dbus/dbus/ChangeLog,v retrieving revision 1.1330 diff -u -p -u -r1.1330 ChangeLog --- ChangeLog 17 Jun 2007 16:43:38 -0000 1.1330 +++ ChangeLog 18 Jun 2007 16:22:41 -0000 @@ -1,3 +1,12 @@ +2007-06-18 Havoc Pennington + + * dbus/dbus-watch.c (dbus_watch_get_socket) + (dbus_watch_get_unix_fd): new API to match DBusConnection + (dbus_watch_get_fd): deprecate this + + Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for + now since all the transports use sockets anyway + 2007-06-16 Ralf Habacker * dbus/dbus-macros.h, dbus/dbus-message.c, Index: dbus/dbus-connection.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-connection.c,v retrieving revision 1.156 diff -u -p -u -r1.156 dbus-connection.c --- dbus/dbus-connection.c 12 Jun 2007 18:36:19 -0000 1.156 +++ dbus/dbus-connection.c 18 Jun 2007 16:22:46 -0000 @@ -4475,12 +4475,13 @@ dbus_connection_dispatch (DBusConnection * dbus_watch_get_enabled() every time anyway. * * The DBusWatch can be queried for the file descriptor to watch using - * dbus_watch_get_fd(), and for the events to watch for using - * dbus_watch_get_flags(). The flags returned by - * dbus_watch_get_flags() will only contain DBUS_WATCH_READABLE and - * DBUS_WATCH_WRITABLE, never DBUS_WATCH_HANGUP or DBUS_WATCH_ERROR; - * all watches implicitly include a watch for hangups, errors, and - * other exceptional conditions. + * dbus_watch_get_unix_fd() or dbus_watch_get_socket(), and for the + * events to watch for using dbus_watch_get_flags(). The flags + * returned by dbus_watch_get_flags() will only contain + * DBUS_WATCH_READABLE and DBUS_WATCH_WRITABLE, never + * DBUS_WATCH_HANGUP or DBUS_WATCH_ERROR; all watches implicitly + * include a watch for hangups, errors, and other exceptional + * conditions. * * Once a file descriptor becomes readable or writable, or an exception * occurs, dbus_watch_handle() should be called to @@ -4732,7 +4733,7 @@ dbus_connection_set_dispatch_status_func * example. DO NOT read or write to the file descriptor, or try to * select() on it; use DBusWatch for main loop integration. Not all * connections will have a file descriptor. So for adding descriptors - * to the main loop, use dbus_watch_get_fd() and so forth. + * to the main loop, use dbus_watch_get_unix_fd() and so forth. * * If the connection is socket-based, you can also use * dbus_connection_get_socket(), which will work on Windows too. @@ -4765,7 +4766,7 @@ dbus_connection_get_unix_fd (DBusConnect * of the connection, if any. DO NOT read or write to the file descriptor, or try to * select() on it; use DBusWatch for main loop integration. Not all * connections will have a socket. So for adding descriptors - * to the main loop, use dbus_watch_get_fd() and so forth. + * to the main loop, use dbus_watch_get_socket() and so forth. * * If the connection is not socket-based, this function will return FALSE, * even if the connection does have a file descriptor of some kind. Index: dbus/dbus-connection.h =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-connection.h,v retrieving revision 1.51 diff -u -p -u -r1.51 dbus-connection.h --- dbus/dbus-connection.h 12 Jun 2007 18:36:19 -0000 1.51 +++ dbus/dbus-connection.h 18 Jun 2007 16:22:46 -0000 @@ -352,7 +352,12 @@ dbus_bool_t dbus_connection_get_socket * @{ */ -int dbus_watch_get_fd (DBusWatch *watch); +#ifndef DBUS_DISABLE_DEPRECATED +DBUS_DEPRECATED int dbus_watch_get_fd (DBusWatch *watch); +#endif + +int dbus_watch_get_unix_fd (DBusWatch *watch); +int dbus_watch_get_socket (DBusWatch *watch); unsigned int dbus_watch_get_flags (DBusWatch *watch); void* dbus_watch_get_data (DBusWatch *watch); void dbus_watch_set_data (DBusWatch *watch, Index: dbus/dbus-mainloop.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-mainloop.c,v retrieving revision 1.19 diff -u -p -u -r1.19 dbus-mainloop.c --- dbus/dbus-mainloop.c 20 Oct 2006 03:04:59 -0000 1.19 +++ dbus/dbus-mainloop.c 18 Jun 2007 16:22:47 -0000 @@ -598,7 +598,7 @@ _dbus_loop_iterate (DBusLoop *loop, #if MAINLOOP_SPEW _dbus_verbose (" skipping watch on fd %d as it was out of memory last time\n", - dbus_watch_get_fd (wcb->watch)); + dbus_watch_get_socket (wcb->watch)); #endif } else if (dbus_watch_get_enabled (wcb->watch)) @@ -609,7 +609,7 @@ _dbus_loop_iterate (DBusLoop *loop, flags = dbus_watch_get_flags (wcb->watch); - fds[n_fds].fd = dbus_watch_get_fd (wcb->watch); + fds[n_fds].fd = dbus_watch_get_socket (wcb->watch); fds[n_fds].revents = 0; fds[n_fds].events = 0; if (flags & DBUS_WATCH_READABLE) @@ -628,7 +628,7 @@ _dbus_loop_iterate (DBusLoop *loop, { #if MAINLOOP_SPEW _dbus_verbose (" skipping disabled watch on fd %d %s\n", - dbus_watch_get_fd (wcb->watch), + dbus_watch_get_socket (wcb->watch), watch_flags_to_string (dbus_watch_get_flags (wcb->watch))); #endif } Index: dbus/dbus-server-socket.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-server-socket.c,v retrieving revision 1.6 diff -u -p -u -r1.6 dbus-server-socket.c --- dbus/dbus-server-socket.c 15 Jun 2007 19:28:36 -0000 1.6 +++ dbus/dbus-server-socket.c 18 Jun 2007 16:22:47 -0000 @@ -161,7 +161,7 @@ socket_handle_watch (DBusWatch *watch int client_fd; int listen_fd; - listen_fd = dbus_watch_get_fd (watch); + listen_fd = dbus_watch_get_socket (watch); client_fd = _dbus_accept (listen_fd); Index: dbus/dbus-spawn.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-spawn.c,v retrieving revision 1.27 diff -u -p -u -r1.27 dbus-spawn.c --- dbus/dbus-spawn.c 15 Jun 2007 19:28:36 -0000 1.27 +++ dbus/dbus-spawn.c 18 Jun 2007 16:22:50 -0000 @@ -722,7 +722,7 @@ handle_watch (DBusWatch *watch, if (condition & DBUS_WATCH_HANGUP) revents |= _DBUS_POLLHUP; - fd = dbus_watch_get_fd (watch); + fd = dbus_watch_get_socket (watch); if (fd == sitter->error_pipe_from_child) handle_error_pipe (sitter, revents); Index: dbus/dbus-transport-socket.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-transport-socket.c,v retrieving revision 1.6 diff -u -p -u -r1.6 dbus-transport-socket.c --- dbus/dbus-transport-socket.c 15 Jun 2007 19:28:36 -0000 1.6 +++ dbus/dbus-transport-socket.c 18 Jun 2007 16:22:50 -0000 @@ -880,7 +880,7 @@ socket_handle_watch (DBusTransport *tran flags); else _dbus_verbose ("asked to handle watch %p on fd %d that we don't recognize\n", - watch, dbus_watch_get_fd (watch)); + watch, dbus_watch_get_socket (watch)); } #endif /* DBUS_ENABLE_VERBOSE_MODE */ Index: dbus/dbus-transport.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-transport.c,v retrieving revision 1.58 diff -u -p -u -r1.58 dbus-transport.c --- dbus/dbus-transport.c 13 Jun 2007 16:30:43 -0000 1.58 +++ dbus/dbus-transport.c 18 Jun 2007 16:22:50 -0000 @@ -812,7 +812,7 @@ _dbus_transport_handle_watch (DBusTransp if (transport->disconnected) return TRUE; - if (dbus_watch_get_fd (watch) < 0) + if (dbus_watch_get_socket (watch) < 0) { _dbus_warn_check_failed ("Tried to handle an invalidated watch; this watch should have been removed\n"); return TRUE; Index: dbus/dbus-watch.c =================================================================== RCS file: /cvs/dbus/dbus/dbus/dbus-watch.c,v retrieving revision 1.22 diff -u -p -u -r1.22 dbus-watch.c --- dbus/dbus-watch.c 21 Oct 2006 21:57:31 -0000 1.22 +++ dbus/dbus-watch.c 18 Jun 2007 16:22:50 -0000 @@ -286,7 +286,7 @@ _dbus_watch_list_set_functions (DBusWatc _dbus_verbose ("Adding a %s watch on fd %d using newly-set add watch function\n", watch_type, - dbus_watch_get_fd (link->data)); + dbus_watch_get_socket (link->data)); } #endif /* DBUS_ENABLE_VERBOSE_MODE */ @@ -302,7 +302,7 @@ _dbus_watch_list_set_functions (DBusWatc link2); _dbus_verbose ("Removing watch on fd %d using newly-set remove function because initial add failed\n", - dbus_watch_get_fd (link2->data)); + dbus_watch_get_socket (link2->data)); (* remove_function) (link2->data, data); @@ -359,7 +359,7 @@ _dbus_watch_list_add_watch (DBusWatchLis if (watch_list->add_watch_function != NULL) { _dbus_verbose ("Adding watch on fd %d\n", - dbus_watch_get_fd (watch)); + dbus_watch_get_socket (watch)); if (!(* watch_list->add_watch_function) (watch, watch_list->watch_data)) @@ -390,7 +390,7 @@ _dbus_watch_list_remove_watch (DBusWatc if (watch_list->remove_watch_function != NULL) { _dbus_verbose ("Removing watch on fd %d\n", - dbus_watch_get_fd (watch)); + dbus_watch_get_socket (watch)); (* watch_list->remove_watch_function) (watch, watch_list->watch_data); @@ -422,7 +422,7 @@ _dbus_watch_list_toggle_watch (DBusWatch if (watch_list->watch_toggled_function != NULL) { _dbus_verbose ("Toggling watch %p on fd %d to %d\n", - watch, dbus_watch_get_fd (watch), watch->enabled); + watch, dbus_watch_get_socket (watch), watch->enabled); (* watch_list->watch_toggled_function) (watch, watch_list->watch_data); @@ -481,10 +481,7 @@ _dbus_watch_set_handler (DBusWatch */ /** - * Gets the file descriptor that should be watched. - * - * On Windows, this will be a socket. On UNIX right now it will be a - * socket but in principle it could be something else. + * Deprecated former name of dbus_watch_get_unix_fd(). * * @param watch the DBusWatch object. * @returns the file descriptor to watch. @@ -492,6 +489,52 @@ _dbus_watch_set_handler (DBusWatch int dbus_watch_get_fd (DBusWatch *watch) { + return dbus_watch_get_unix_fd (watch); +} + +/** + * Returns a UNIX file descriptor to be watched, + * which may be a pipe, socket, or other type of + * descriptor. On UNIX this is preferred to + * dbus_watch_get_socket() since it works with + * more kinds of #DBusWatch. + * + * Always returns -1 on Windows. On Windows you use + * dbus_watch_get_socket() to get a Winsock socket to watch. + * + * @param watch the DBusWatch object. + * @returns the file descriptor to watch. + */ +int +dbus_watch_get_unix_fd (DBusWatch *watch) +{ + /* FIXME remove #ifdef and do this on a lower level + * (watch should have set_socket and set_unix_fd and track + * which it has, and the transport should provide the + * appropriate watch type) + */ +#ifdef DBUS_UNIX + return watch->fd; +#else + return -1; +#endif +} + +/** + * Returns a socket to be watched, on UNIX this will return -1 if our + * transport is not socket-based so dbus_watch_get_unix_fd() is + * preferred. + * + * On Windows, dbus_watch_get_unix_fd() returns -1 but this function + * returns a Winsock socket (assuming the transport is socket-based, + * as it always is for now). + * + * @param watch the DBusWatch object. + * @returns the socket to watch. + */ +int +dbus_watch_get_socket (DBusWatch *watch) +{ return watch->fd; } @@ -546,7 +589,7 @@ dbus_watch_set_data (DBusWatch *w DBusFreeFunction free_data_function) { _dbus_verbose ("Setting watch fd %d data to data = %p function = %p from data = %p function = %p\n", - dbus_watch_get_fd (watch), + dbus_watch_get_socket (watch), data, free_data_function, watch->data, watch->free_data_function); if (watch->free_data_function != NULL)