| Commit message (Collapse) | Author | Age | Files | Lines | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Fix some annoying DBusString API and fix all affected code.
	* dbus/dbus-string.c (_dbus_string_init): get rid of annoying
	max_length argument
	(_dbus_string_get_data): change to return string instead of using
	an out param
	(_dbus_string_get_const_data): ditto
	(_dbus_string_get_data_len): ditto
	(_dbus_string_get_const_data_len): ditto
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
All tests pass, no memleaks, no valgrind complaints.
	* bus/test.c: refcount handler_slot
	* bus/connection.c (bus_connections_new): refcount
	connection_data_slot
	* dbus/dbus-auth-script.c (_dbus_auth_script_run): delete unused
	bytes so that auth scripts pass.
	* bus/dispatch.c: init message_handler_slot so it gets allocated
	properly
	* bus/dispatch.c (message_handler_slot_ref): fix memleak
	* dbus/dbus-server-debug-pipe.c (_dbus_server_debug_pipe_new):
	dealloc server_pipe_hash when no longer used for benefit of
	leak checking
	* dbus/dbus-auth.c (process_command): memleak fix
	* bus/dispatch.c (check_hello_message): memleak fix
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-watch.c (_dbus_watch_new): handle failure to malloc
	the watch
	* dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
	add some missing dbus_set_result
	* bus/dispatch.c (bus_dispatch_add_connection): handle failure to
	alloc the DBusMessageHandler
	* dbus/dbus-transport.c (_dbus_transport_disconnect): don't ref
	the transport here, since we call this from the finalizer; it
	resulted in a double-finalize.
	* dbus/dbus-transport.c (_dbus_transport_disconnect): fix a bug
	where we tried to use transport->connection that was NULL,
	happened when transport was disconnected early on due to OOM
	* bus/*.c: adapt to handle OOM for watches/timeouts
	* dbus/dbus-transport-unix.c: port to handle OOM during
	watch handling
	* dbus/dbus-auth.c (_dbus_auth_get_unused_bytes): return a
	reference to unused bytes instead of a copy
	* dbus/dbus-server.c (dbus_server_handle_watch): return FALSE for
	out of memory
	* dbus/dbus-connection.c (dbus_connection_handle_watch): return
	FALSE on OOM
	* dbus/dbus-timeout.c (dbus_timeout_handle): return FALSE for out
	of memory
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Mega-patch that gets the message bus daemon initially handling
	out-of-memory. Work still needed. Also lots of random
	moving stuff to DBusError instead of ResultCode.
	* dbus/dbus-list.c (_dbus_list_length_is_one): new function
	* dbus/dbus-connection.c
	(dbus_connection_send_with_reply_and_block): use DBusError
	* dbus/dbus-bus.c: adapt to API changes, make it use DBusError not
	DBusResultCode
	* dbus/dbus-connection.c (dbus_connection_send): drop the result
	code here, as the only failure possible is OOM.
	* bus/connection.c (bus_connection_disconnect):
	rename bus_connection_disconnected as it's a notification only
	* bus/driver.c (bus_driver_handle_acquire_service): don't free
	"name" on get_args failure, should be done by get_args;
	don't disconnect client for bad args, just return an error.
	(bus_driver_handle_service_exists): ditto
	* bus/services.c (bus_services_list): NULL-terminate returned array
	* bus/driver.c (bus_driver_send_service_lost)
	(bus_driver_send_service_acquired): send messages from driver to a
	specific client to the client's unique name, not to the broadcast
	service.
	* dbus/dbus-message.c (decode_header_data): reject messages that
	contain no name field
	(_dbus_message_get_client_serial): rename to
	dbus_message_get_serial and make public
	(_dbus_message_set_serial): rename from set_client_serial
	(_dbus_message_set_reply_serial): make public
	(_dbus_message_get_reply_serial): make public
	* bus/connection.c (bus_connection_foreach): allow stopping
	iteration by returning FALSE from foreach function.
	* dbus/dbus-connection.c (dbus_connection_send_preallocated)
	(dbus_connection_free_preallocated_send)
	(dbus_connection_preallocate_send): new API for sending a message
	without possibility of malloc failure.
	(dbus_connection_send_message): rename to just
	dbus_connection_send (and same for whole function family)
	* dbus/dbus-errors.c (dbus_error_free): make this reinit the error
	* dbus/dbus-sysdeps.c (_dbus_exit): new function
	* bus/activation.c: handle/return errors
	* dbus/dbus-errors.h: add more DBUS_ERROR #define
	* dbus/dbus-sysdeps.c (_dbus_directory_open) (_dbus_file_get_contents)
	(_dbus_directory_get_next_file): use DBusError instead of DBusResultCode
	(_dbus_result_from_errno): move to this file
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* test/data/auth/*: adapt to changes
	* dbus/dbus-auth-script.c (_dbus_auth_script_run): add
	USERID_BASE64 and change USERNAME_BASE64 to put in username not
	userid
	* dbus/dbus-keyring.c (_dbus_keyring_validate_context): prevent
	more stuff from being in a context name, to make the protocol
	simpler to deal with
	* dbus/dbus-errors.c (dbus_error_has_name): new function
	(dbus_error_is_set): new function
	* dbus/dbus-auth.c: replace DBUS_STUPID_TEST_MECH auth
	with DBUS_COOKIE_SHA1, implement DBUS_COOKIE_SHA1
	* dbus/dbus-connection.c (dbus_connection_flush): also read
	messages during a flush operation
	* dbus/Makefile.am: remove dbus-md5 since it isn't currently used.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Throughout: mop up all the Doxygen warnings and undocumented
	stuff.
	* dbus/dbus-sysdeps.c (do_exec): do not use execvp, we don't want
	to search any paths.
	* dbus/dbus-threads.c: move global mutex initializers to
	dbus-internals.h, multiple prototypes was confusing doxygen
	besides being kind of ugly
	* Doxyfile (PREDEFINED): have Doxygen define
	DOXYGEN_SHOULD_SKIP_THIS so we can exclude things from
	docs with #ifndef DOXYGEN_SHOULD_SKIP_THIS
	(do not abuse the feature! it's for stuff like the autogenerated
	macros in dbus-md5.c, not just for things you don't feel like
	documenting...)
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-auth.c (handle_server_data_external_mech): args to
	dbus_credentials_match were backward
	* dbus/dbus-auth-script.c (_dbus_auth_script_run): support
	NO_CREDENTIALS and ROOT_CREDENTIALS
	* dbus/dbus-auth.c (_dbus_auth_do_work): move get_state() routine
	into here. Never process more commands after we've reached an
	end state; store further data as unused bytes.
	* test/data/auth/*: add more auth tests
	* dbus/dbus-auth-script.c (_dbus_auth_script_run): support EXPECT
	command to match exact string and EXPECT_UNUSED to match unused
	bytes
	* test/Makefile.am (dist-hook): fix to dist all the test stuff
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-string.c (_dbus_string_pop_line): fix to also strip
	\r off of popped lines
	* dbus/dbus-auth.c (_dbus_auth_test): write code to run auth
	scripts
	* dbus/dbus-auth-script.c (_dbus_auth_script_run): when doing a
	SEND, append \r\n
 | 
|   
  
  
  
  
  
  
  
  
   | 
* dbus/dbus-auth-script.c, dbus/dbus-auth-script.h: sync
	initial cut at test framework for DBusAuth from laptop.
	Doesn't quite work yet but it compiles and I need to get
	it off the 266mhz laptop. ;-)
	* dbus/dbus-server-debug.c (_dbus_server_debug_accept_transport):
	fix a memleak in error case
 |