Feature Notes for Major Revisions
This page lists the major changes that happened between different major versions of D-Bus.
1.0.x to 1.2.x (including 1.1.20)
- Features
- The system bus now supports starting services on demand. This uses a setuid helper program because system bus daemon runs as a nobody user, while services it launches may need to run as a different user.
- A design doc is available in doc/system-activation.txt
- The TCP address format has been enhanced, such that TCP may be actually usable.
- The dbus-daemon man page describes the new elements in the address format.
- Support ANONYMOUS mechanism for authentication, which allows a client to authenticate as nobody in particular
- The ANONYMOUS support means you can now use D-Bus (without a bus daemon) as a protocol for a network service provided to anonymous Internet or LAN clients.
- Autolaunched busses now save their parameters in X11 if possible making them behave closer to busses launched through the normal mechanisms
- inotify is now the default backend for watching configuration file changes
- Better thread support.
- The bus daemon now generates a globally-unique ID for itself.
- Use this as a unique ID for a user's session, for example.
- Support for message serialization added for use with external transports like TUBES!!!
- Better eavesdropping support now picks up reply messages for debugging
- The system bus now supports starting services on demand. This uses a setuid helper program because system bus daemon runs as a nobody user, while services it launches may need to run as a different user.
- Library API additions
- dbus_connection_set_allow_anonymous() - allow the message stream to begin if the client auths as anonymous (otherwise, the client will be dropped unless they auth as a user).
- dbus_watch_get_unix_fd() - replaces dbus_watch_get_fd
- dbus_watch_get_socket() - replaces dbus_watch_get_fd
- dbus_server_get_id() - available to access the unique ID of a particular address
- dbus_connection_get_server_id() - available to access the unique ID of a particular address
- dbus_message_marshal() - serializes a message into a byte array
- dbus_message_demarshal() - de-serializes a byte array into a message
- Library API deprecations
- dbus_watch_get_fd() - had unclear cross-platform semantics
- Protocol additions