From ee27481d7b7d6d9a4f41b7d641a2618dedf676dd Mon Sep 17 00:00:00 2001 From: Havoc Pennington Date: Sat, 26 Feb 2005 06:37:46 +0000 Subject: 2005-02-26 Havoc Pennington * doc/TODO: remove the "guid" item * test/glib/test-profile.c (no_bus_thread_func): use open_private (with_bus_thread_func): use open_private * dbus/dbus-connection.c (dbus_connection_open_private): new function that works like the old dbus_connection_open() (dbus_connection_open): now returns an existing connection if possible * dbus/dbus-server-unix.c (handle_new_client_fd_and_unlock): pass through the GUID to the transport * dbus/dbus-server.c (_dbus_server_init_base): keep around the GUID in hex-encoded form. * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new): pass GUID argument in to the transport * dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): add guid argument * dbus/dbus-transport.c (_dbus_transport_init_base): add guid argument * dbus/dbus-auth.c (_dbus_auth_server_new): add guid argument --- doc/TODO | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) (limited to 'doc') diff --git a/doc/TODO b/doc/TODO index 77d595a9..dbe2d251 100644 --- a/doc/TODO +++ b/doc/TODO @@ -33,21 +33,9 @@ Important for 1.0 - dbus-pending-call.c has some API and thread safety issues to review - - make dbus_connection_open() return a shared connection from a pool. - Add dbus_connection_open_private() that works like the current one. - To do this, each DBusServer could have a 128-bit GUID. This GUID - would be in the address from dbus_server_get_address(). On - connection to a server, the GUID would be provided as the first - thing in the auth protocol, and verified vs. the expected GUID if a - GUID was in the address used to connect. A hash from GUID to - connection would be kept, so attempts to connect to a GUID already - in the hash would return a shared existing connection. - - The purpose of all this is to allow a dbus_g_proxy_to_string() that - would convert the proxy to an "IOR" and dbus_g_proxy_from_string() - that would decode; using these, dbus-glib users could avoid - DBusConnection entirely. Of course the same applies to other kinds - of binding. + - transmit GUID from server to client in the auth protocol, so + connections can be shared even if the address used to connect + to them didn't have a GUID in it. Important for 1.0 GLib Bindings === @@ -74,6 +62,13 @@ Might as Well for 1.0 Can Be Post 1.0 === + - Allow a dbus_g_proxy_to_string()/g_object_to_string() that + would convert the proxy to an "IOR" and dbus_g_proxy_from_string() + that would decode; using these, dbus-glib users could avoid + DBusConnection entirely. Of course the same applies to other kinds + of binding. This would use dbus_connection_open()'s connection-sharing + feature to avoid massive proliferation of connections. + - DBusWatchList/TimeoutList duplicate a lot of code, as do protected_change_watch/protected_change_timeout in dbus-connection.c and dbus-server.c. This could all be mopped up, cut-and-paste -- cgit