summaryrefslogtreecommitdiffstats
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Improve description of allowed variant signatures (#10185)Simon McVittie2007-10-091-1/+1
| | | | Patch based on one from Kristoffer Lundén, amended as per Havoc's comment.
* doc/dbus-specification.xml: Clarify description of DBUS_COOKIE_SHA1 (#10184).Simon McVittie2007-10-091-10/+10
| | | | Patch from Kristoffer Lundén.
* doc/dbus-specification.xml: Specifically forbid empty structs (#7969)Simon McVittie2007-10-091-1/+6
|
* Add argument path matching support. Bug #11066.Ryan Lortie2007-09-201-0/+14
| | | | | | | | | | | | | | | | | | 2007-09-20 Ryan Lortie <desrt@desrt.ca> * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new, bus_match_rule_set_arg, bus_match_rule_parse_arg_match, match_rule_matches): Add support for parsing and matching on arg0path='/some/path' type rules. * dbus/signals.h (bus_match_rule_set_arg): change to take const DBusString instead of const char * for the string to match against. * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match documentation about the path matching. * doc/dbus-specification.xml: add a more detailed description of the changes here.
* migrate from cvs to git (cvs2svn -> git-svnimport).Ryan Lortie2007-09-131-0/+0
| | | | | | | | | | | 2007-09-13 Ryan Lortie <desrt@desrt.ca> migrate from cvs to git (cvs2svn -> git-svnimport). * HACKING: update release/branch/tag instructions * */.cvsignore: rename to .gitignore also, clean up tags and branch names to conform to HACKING
* 2007-07-27 Havoc Pennington <hp@redhat.com>dbus-1.1.2Havoc Pennington2007-07-271-1/+1
| | | | * release 1.1.2
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-241-0/+2
| | | | | | * doc/busconfig.dtd: Add servicehelper into the dtd, it will soon be a valid part of the config file.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-241-0/+80
| | | | | | | * doc/system-activation.txt: Add design document for the system activation parts. I'll shortly be committing many patches that add system activation using a setuid launcher into CVS, so expect things to be broken for a few hours.
* 2007-07-13 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-141-1/+1
| | | | * Add indent-tabs-mode: nil to all file headers.
* 2007-06-18 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-06-181-0/+36
| | | | | | | | | | | | | | * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId() * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId() * bus/bus.c (bus_context_new): generate a unique ID for each bus context * dbus/dbus-connection.c (dbus_connection_get_server_id): new function * dbus/dbus-bus.c (dbus_bus_get_id): new function * dbus/dbus-server.c (dbus_server_get_id): new function
* doc/dbus-specification.xml: say the protocol version is 1 instead of 0Simon McVittie2007-06-141-3/+1
| | | | | | (patch from Kristoffer Lundén, fd.o#10033) Also remove the FIXME about removing protocol version from messages (as per Havoc's comment on that bug)
* doc/dbus-specification.xml: explicitly specify that STRING cannot contain ↵Simon McVittie2007-05-211-2/+2
| | | | embedded NULs.
* be consistent about notationsHavoc Pennington2007-05-181-2/+2
|
* 2007-05-18 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-05-181-0/+2
| | | | | * doc/dbus-specification.xml: add a GetAll to the Properties interface.
* doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local interfaceSimon McVittie2007-05-041-1/+12
| | | | | | | and the corresponding /o/fd/DBus/Local object path; describe them as reserved and forbid using them in a sent message, mentioning that in the reference implementation this will cause the connection to be dropped. Patch approved by Havoc.
* * doc/dbus-tutorial.xml: Replace Python section of tutorial withSimon McVittie2007-01-251-543/+5
| | | | a pointer to the tutorial maintained as part of dbus-python
* 2006-11-17 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-11-181-5/+14
| | | | * doc/dbus-faq.xml: minor FAQ tweaks
* 2006-11-14 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-11-151-20/+58
| | | | | | | | | | | | | | * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the UUID had the timestamp last, but the implementation had it first; move it to last since I think it's a tiny bit nicer (easier to compare at a glance, faster to sort, less code), and will not cause any practical compatibility problems. Also, always convert the timestamp to big endian. * doc/dbus-specification.xml: Clean up the docs on the UUID. * tools/dbus-uuidgen.1: more prominently say it is not suitable as a replacement for regular uuidgen/RFC4122.
* 2006-11-08 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-11-092-2/+28
| | | | | | | * doc/dbus-specification.xml: add a note about protocol stability * doc/TODO: Remove "important for 1.0" section, replace with "important for 1.2" section
* * README: remove some of the out of date flagsJohn (J5) Palmieri2006-11-081-7/+0
| | | | * doc/TODO: Remove todo items which are done
* 2006-11-07 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-11-073-14/+39
| | | | | | * doc/dbus-specification.xml, doc/dbus-faq.xml, README: various documentation updates. Bump faq/spec versions (not to 1.0; I don't think the spec will be "finished"/1.0 when we ship the 1.0 library).
* 2006-10-30 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-301-0/+5
| | | | | * tools/dbus-launch.1, doc/TODO: capture intent to change the command line options of dbus-launch a bit post 1.0
* 2006-10-26 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-271-2/+2
| | | | | | | | * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock): change to be recursive (_dbus_pthread_mutex_unlock): make it recursive (_dbus_pthread_condvar_wait): save/restore the recursion count (_dbus_pthread_condvar_wait_timeout): save/restore the recursion count
* 2006-10-26 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-271-8/+14
| | | | | | | | | * doc/dbus-specification.xml: clarify the UUID text slightly * dbus/dbus-sysdeps-pthread.c: check for and mostly abort on pthread errors. Add DBusMutexPThread and DBusCondVarPThread in preparation for being able to extend them for e.g. recursive mutexes.
* * dbus-sysdeps-unix.c (_dbus_set_local_creds): Clean up theJohn (J5) Palmieri2006-10-261-0/+4
| | | | | | | | LOCAL_CREDS vs CMSGCRED stuff a bit. Prefer CMSGCRED. This needs to be cleaned up more. * doc/TODO: Add a todo that *BSD hackers should look at cleaning up the CREDS issue.
* 2006-10-21 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-211-4/+8
| | | | | | | * dbus/dbus-message.h: put #ifndef DBUS_DISABLE_DEPRECATED around dbus_message_iter_get_array_len(). * throughout: documentation improvements.
* more todo itemsHavoc Pennington2006-10-201-0/+7
|
* 2006-10-20 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-201-8/+10
| | | | | | | | | | | | | * doc/TODO: remove the int64 thing from 1.0 since it doesn't matter, and the message-loader-breaker thing since nobody is going to do it. Add an item to 1.0 about supporting recursive locks in dbus_threads_init_default() though, since it should be easy. * dbus/dbus-connection.c (_dbus_connection_read_write_dispatch): Fix this in the !dispatch case to avoid busy-looping after disconnection * More misc docs improvements
* * doc/TODO: Remove the check TODO itemJohn (J5) Palmieri2006-10-141-4/+0
|
* 2006-10-01 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-011-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dbus/dbus-connection.c (_dbus_connection_close_if_only_one_ref): Add a hack to make DBusNewConnectionFunction work right. * dbus/dbus-server-socket.c (handle_new_client_fd_and_unlock): use the hack here. Also, fix the todo about refcount leak. * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new): and use the hack here * dbus/dbus-connection.c: Kill the "shared" flag vs. the "shareable" flag; this was completely broken, since it meant dbus_connection_open() returned a connection of unknown shared-ness. Now, we always hold a ref on anything opened as shareable. Move the call to notify dbus-bus.c into connection_forget_shared_unlocked, so libdbus consistently forgets all its knowledge of a connection at once. This exposed numerous places where things were totally broken if we dropped a ref inside get_dispatch_status_unlocked where connection_forget_shared_unlocked was previously, so move connection_forget_shared_unlocked into _dbus_connection_update_dispatch_status_and_unlock. Also move the exit_on_disconnect here. (shared_connections_shutdown): this assumed weak refs to the shared connections; since we have strong refs now, the assertion was failing and stuff was left in the hash. Fix it to close still-open shared connections. * bus/dispatch.c: fixup to use dbus_connection_open_private on the debug pipe connections * dbus/dbus-connection.c (dbus_connection_dispatch): only notify dbus-bus.c if the closed connection is in fact shared (_dbus_connection_close_possibly_shared): rename from _dbus_connection_close_internal (dbus_connection_close, dbus_connection_open, dbus_connection_open_private): Improve docs to explain the deal with when you should close or unref or both * dbus/dbus-bus.c (_dbus_bus_notify_shared_connection_disconnected_unlocked): rename from _dbus_bus_check_connection_and_unref_unlocked and modify to loop over all connections * test/test-utils.c (test_connection_shutdown): don't try to close shared connections. * test/name-test/test-threads-init.c (main): fix warnings in here * dbus/dbus-sysdeps.c (_dbus_abort): support DBUS_BLOCK_ON_ABORT env variable to cause blocking waiting for gdb; drop DBUS_PRINT_BACKTRACE and just call _dbus_print_backtrace() unconditionally. * configure.in: add -export-dynamic to libtool flags if assertions enabled so _dbus_print_backtrace works. * dbus/dbus-sysdeps-unix.c (_dbus_print_backtrace): use fprintf instead of _dbus_verbose to print the backtrace, and diagnose lack of -rdynamic/-export-dynamic
* 2006-09-30 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-011-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in (LT_CURRENT, LT_AGE): increment current and age to reflect addition of interfaces. * doc/dbus-specification.xml: describe a new org.freedesktop.DBus.Peer.GetMachineId method * dbus/dbus-string.c (_dbus_string_skip_white_reverse): new function (_dbus_string_skip_white, _dbus_string_skip_blank): use new DBUS_IS_ASCII_BLANK, DBUS_IS_ASCII_WHITE macros and fix assertion at end of skip_white (_dbus_string_chop_white): new function * bus/connection.c (bus_connections_setup_connection): call dbus_connection_set_route_peer_messages. * dbus/dbus-connection.c (_dbus_connection_peer_filter_unlocked_no_update): modify to support a GetMachineId method. Also, support a new flag to let the bus pass peer methods through to apps on the bus, which can be set with dbus_connection_set_route_peer_messages. Finally, handle and return an error for anything unknown on the Peer interface, which will allow us to extend the Peer interface in the future without fear that we're now intercepting something apps were wanting to see. * tools/dbus-uuidgen.c: a thin wrapper around the functions in dbus/dbus-uuidgen.c * dbus/dbus-uuidgen.c: implement the bulk of the dbus-uuidgen binary here, since most of the code is already in libdbus * dbus/dbus-sysdeps.c (_dbus_read_local_machine_uuid): read the uuid from the system config file * dbus/dbus-internals.c (_dbus_generate_uuid, _dbus_uuid_encode) (_dbus_read_uuid_file_without_creating) (_dbus_create_uuid_file_exclusively, _dbus_read_uuid_file): new uuid-related functions, partly factored out from dbus-server.c * dbus/dbus-sysdeps.c (_dbus_error_from_errno): convert EEXIST to DBUS_ERROR_FILE_EXISTS instead of EEXIST * dbus/dbus-protocol.h (DBUS_ERROR_FILE_EXISTS): add file exists error * tools/dbus-cleanup-sockets.1: explain what the point of this thing is a bit more * autogen.sh (run_configure): add --config-cache to default configure args * dbus/dbus-internals.h (_DBUS_ASSERT_ERROR_IS_SET): disable the error set/clear assertions when DBUS_DISABLE_CHECKS is defined * tools/dbus-launch.c (main): if xdisplay hasn't been opened, don't try to save address, fixes crash in make check
* * dbus/dbus-threads.c: Allow recursive mutex's to be passed intoJohn (J5) Palmieri2006-09-141-7/+0
| | | | | | | dbus_threads_init and be used by the dbus mutex functions to avoid deadlocks. * doc/TODO: Remove recursive mutex dbus_connection_dispatch TODO item
* * doc/TODO:John (J5) Palmieri2006-09-061-15/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Remove pending call locking todo item - dbus_connection_open now holds hard ref. Remove todo item - do proper locking on _dbus_bus_check_connection_and_unref and handle DBUS_BUS_STARTER. Remove todo item - Warn on closing of a shared connection. Remove todo item * bus/bus.c, bus/connection.c, bus/dispatch.c, dbus/dbus-bus.c, dbus/dbus-connection.c: Use the dbus_connection_close_internal so we don't get the warning when closing shared connections * test/test-service.c, test/test-shell-service.c: Applications don't close shared connections themselves so we unref instead of close * test/test-utils.c (test_connection_shutdown): Close the connection * dbus/dbus-bus.c (_dbus_bus_check_connection_and_unref): Changed to _dbus_bus_check_connection_and_unref_unlocked since we only call this method on a locked connection. Make sure we call _dbus_connection_unref_unlocked instead of dbus_connection_unref also. Handle DBUS_BUS_STARTER correctly * dbus/dbus-connection.c (connection_record_shared_unlocked): Mark as shared and hard ref the connection (connection_forget_shared_unlocked): Remove the hard ref from the connection (_dbus_connection_close_internal_and_unlock): New internal function which takes a locked connection and unlocks it after closing it (_dbus_connection_close_internal): New internal function which acts like the origonal dbus_connection_close method by grabbing a connection lock and calling _dbus_connection_close_internal_and_unlock (dbus_connection_close): Public close method, warns when the app trys to close a shared connection
* * doc/TODO: Removed dtd publishing item.John (J5) Palmieri2006-09-061-2/+0
| | | | | It seems the dtd has already been added at http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd
* * doc/TODO, various source files: Audited todo's and FIXME's andJohn (J5) Palmieri2006-09-061-1/+3
| | | | | | prepended the ones we should be looking at with 1.0. Those prepended with 1.0? need clerification or might not be needed for 1.0
* add some items related to shared connectionsHavoc Pennington2006-08-241-0/+13
|
* 2006-08-20 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-08-202-105/+352
| | | | | * doc/dbus-faq.xml, doc/dbus-tutorial.xml: some improvements to the docs
* 2006-08-17 Alp Toker <alp@atoker.com>Robert McQueen2006-08-171-5/+5
| | | | * doc/dbus-specification.xml: Fix some minor typos.
* * s/D-BUS/D-Bus/gJohn (J5) Palmieri2006-08-035-199/+199
|
* add note about fixing locking on pending callHavoc Pennington2006-07-211-1/+3
|
* * doc/TODO:John (J5) Palmieri2006-07-171-12/+0
| | | | | | | * dbus/dbus-bus.c: * dbus-errors.c: * dbus/dbus-marshal-validate.c: Removed TODO items which were fixed or are no longer relevent
* * bus/activation.[ch] (bus_activation_list_services): new function toJohn (J5) Palmieri2006-07-141-0/+31
| | | | | | | | | | | | get the list of services that can be activated * bus/dispatch.c: test coverage for the new bus method ListActivatableNames * bus/driver.c: new bus method ListActivatableNames to get the list of services that can be activated * doc/dbus-specification.xml: ListActivatableNames method documentation
* * dbus/dbus-connection.c (dbus_connection_close): removed deprecatedJohn (J5) Palmieri2006-07-071-24/+12
| | | | | | | | | | | | | function (dbus_connection_dispatch): On disconnect unref any shared connections * dbus/dbus-bus.c (_dbus_bus_check_connection_and_unref): new function for cleaning up shared connections on disconnect (internal_bus_get): get a hard refrence to shared connections when they are created * doc/TODO: Remove items which are no longer relevent or have been fixed Split 1.0 todo items with a 0.90 freeze todo list
* add dbus_bus_get refcount item to TODOHavoc Pennington2006-06-141-1/+11
| | | | link to mail list post about pending call threading problems
* the recursive locks todo item was a little misleadingHavoc Pennington2006-06-061-2/+2
|
* * Adding old doc patch that never got appliedJohn (J5) Palmieri2006-05-031-0/+149
| | | | | | | * dbus/bus.c (dbus_bus_add_match): Add documentation * doc/dbus-specification.xml: Add documentation for the match rules and the AddMatch and RemoveMatch methods
* add dispatch recursion item to TODOHavoc Pennington2006-02-151-0/+7
|
* Add documentation on glib client bindings and annotationsRoss Burton2005-12-191-24/+240
|
* * configure.in: Add test/name-test/Makefile to the generatedJohn (J5) Palmieri2005-11-222-20/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefile list * dbus/dbus-shared.h (#define DBUS_NAME_FLAG_ALLOW_REPLACEMENT): New flag which replaces DBUS_NAME_FLAG_PROHIBIT_REPLACEMENT (#define DBUS_NAME_FLAG_DO_NOT_QUEUE): New flag for specifying not to queue an ower if it can't be the primary owner * bus/bus.h: Add new internal BusOwner struct * bus/driver.c (bus_driver_handle_hello): Send flags (0 for default) to bus_registry_ensure and don't set the prohibit_replacement flag since they are now set per BusOwner and not per name. (bus_driver_handle_list_queued_owners): bus method (ListQueuedOwners) that returns the list of connections in a name's connection queue * bus/services.c (struct BusService): remove prohibit_replacement field (struct BusOwner): new struct for keeping track of queued connections and their associated flags for the queue (struct BusRegistry): add a BusOwner memory pool (bus_registry_new): initialize the BusOwner memory pool (bus_registry_unref): free the BusOwner memory pool (_bus_service_find_owner_link): new internal method for searching the queue for a specific connection (bus_owner_set_flags): new method for adding setting the flags on a bus owner (bus_owner_new): new method that creates a BusOwner object from the pool and sets its flags (bus_owner_ref, bus_owner_unref): ref counting for BusOwner objects (bus_registry_ensure): Add the flags parameter (bus_registry_acquire_service): Switch from using raw connections to using the BusOwner struct Add new state machine for dealing with the new set of flags (bus_registry_set_service_context_table, struct OwnershipCancelData, cancel_ownership, free_ownership_cancel_data, add_cancel_ownership_to_transaction, struct OwnershipRestoreData, restore_ownership, free_ownership_restore_data, add_restore_ownership_to_transaction): Switch to using BusOwner instead of raw connections (bus_service_add_owner): Add flags parameter Switch to using BusOwner instead of raw connections Add state machine for dealing with the new set of flags (bus_service_swap_owner): Swaps the first and second owners in the queue. Used to make sure proper signals are sent when a service looses or gains primary ownership. We never insert an owner at the top of the queue. Instead we insert it in the second position and then swap. (bus_service_remove_owner): Remove the owner from the queue sending out the NameLost and NameOwnerChanged signals if the we were the primary owner (bus_service_get_primary_owners_connection): New method that extracts the connection from the primary owner (bus_service_get_primary_owner): Returns the BusOwner instead of the connection (bus_service_get_allow_replacement): Changed from the old bus_service_get_prohibit_replacement method. Checks the flags of the primary owner and returns if it can be replaced or not (bus_service_set_prohibit_replacement): removed (bus_service_has_owner): returns TRUE if and owner with the specified connection exists in the queue * dbus/dbus-bus.c (dbus_bus_connection_get_unique_name): New helper method that only compiles if tests are enabled. Allows us to get the unique name of a connection so we can check it against the queue when doing regression tests * bus/activation.c (bus_activation_send_pending_auto_activate), bus/dispatch.c (bus_dispatch), bus/driver.c (bus_driver_handle_get_service_owner, bus_driver_handle_get_connection_unix_user, bus_driver_handle_get_connection_unix_process_id, bus_driver_handle_get_connection_selinux_security_context), bus/signals.c (connection_is_primary_owner): use bus_service_get_primary_owners_connection instead of bus_service_get_primary_owner * dbus/dbus-sysdeps.c (_dbus_connect_unix_socket, _dbus_listen_unix_socket): Calculate the length of the socket path and use that instead of using a fixed length which was causing socket names to contain many trailing Nul bytes. * dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c (dbus_g_method_get_sender): New method for extracting the sender from a DBusGMethodInvocation (dbus_g_method_return_get_reply): changed name to dbus_g_method_get_reply (dbus_g_method_return_send_reply): changed name to dbus_g_method_send reply * doc/dbus-specification.xml: New docs that describe how the new queueing system works and talks about the changes to the how we specify socket names * glib/examples/example-service.c, glib/examples/example-signal-emitter.c, glib/examples/statemachine/statemachine-server.c: Changed the RequestName flags to the new system * test/name-test/ (test-names.c, run-test.sh, Makefile.am): New regression test suite for testing various states of the new queueing system
* 2005-11-15 Robert McQueen <robot101@debian.org>Robert McQueen2005-11-151-1/+97
| | | | | | | | | | | | | | | | | | | | | | | * bus/driver.c, bus/services.c, bus/services.h: Add a ReleaseName method to org.freedesktop.DBus to release a bus name or give up waiting in the queue for it. * dbus/dbus-bus.c, dbus/dbus-bus.h, dbus/dbus-shared.h: Add a dbus_bus_release_name method to send the ReleaseName method calls. Add constants for the return values to dbus/dbus-shared.h. * doc/dbus-specification.xml: Document the new ReleaseName method in the specification. * python/dbus_bindings.pyx: Add a low-level python binding for the release name method. * python/exceptions.py, python/service.py: Make freeing BusName objects release the name. Add a NameExistsException, and fix a bug with creating UnknownMethodException. * test/python/test-client.py: Add tests for freeing BusName objects causing names to be released.