1. 24 Apr, 2003 1 commit
    • James Willcox's avatar
      · c2a28557
      James Willcox authored
      2003-04-23  James Willcox  <jwillcox@gnome.org>
      
      	* glib/dbus-glib.h:
      	* glib/dbus-gmain.c: (add_timeout), (wakeup_main), (create_source),
      	(dbus_connection_setup_with_g_main),
      	(dbus_server_setup_with_g_main):
      	* glib/test-dbus-glib.c: (main):
      	* glib/test-thread-client.c: (main):
      	* glib/test-thread-server.c: (new_connection_callback), (main):
      	* tools/dbus-monitor.c: (main):
      
      	Added a GMainContext argument to dbus_connection_setup_with_g_main()
      	and dbus_server_setup_with_g_main().
      c2a28557
  2. 23 Apr, 2003 2 commits
    • Havoc Pennington's avatar
      2003-04-20 Havoc Pennington <hp@pobox.com> · da237031
      Havoc Pennington authored
      	* doc/dbus-specification.sgml: document the restrictions on
      	message and service names
      da237031
    • Havoc Pennington's avatar
      2003-04-22 Havoc Pennington <hp@redhat.com> · b29d0c53
      Havoc Pennington authored
      	* dbus/dbus-message.c, dbus/dbus-marshal.c: add 64-bit integer
      	support, and do some code cleanups to share more code and
      	speed up array marshal/demarshal.
      
      	* dbus-1.0.pc.in (Cflags): put libdir include file in cflags
      
      	* configure.in: generate dbus-arch-deps.h
      
      	* dbus/dbus-protocol.h (DBUS_TYPE_INT64, DBUS_TYPE_UINT64): add
      	64-bit typecodes
      b29d0c53
  3. 22 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-22 Havoc Pennington <hp@redhat.com> · b3a39698
      Havoc Pennington authored
      	* test/data/valid-messages/opposite-endian.message: fix test
      	to use proper type for rply field
      
              * test/data/invalid-messages: add tests for below validation
      
      	* dbus/dbus-message.c (decode_header_data): validate field types,
      	and validate that named fields are valid names
      	(decode_name_field): consider messages in the
      	org.freedesktop.Local. namespace to be invalid.
      
      	* dbus/dbus-string.c (_dbus_string_validate_name): new
      b3a39698
  4. 19 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-19 Havoc Pennington <hp@pobox.com> · 983200f9
      Havoc Pennington authored
      	* bus/driver.c (bus_driver_handle_hello): check limits and
      	return an error if they are exceeded.
      
      	* bus/connection.c: maintain separate lists of active and inactive
      	connections, and a count of each. Maintain count of completed
      	connections per user. Implement code to check connection limits.
      
      	* dbus/dbus-list.c (_dbus_list_unlink): export
      
      	* bus/bus.c (bus_context_check_security_policy): enforce a maximum
      	number of bytes in the message queue for a connection
      983200f9
  5. 18 Apr, 2003 3 commits
    • Havoc Pennington's avatar
      2003-04-18 Havoc Pennington <hp@pobox.com> · d3fb6f35
      Havoc Pennington authored
      	* dbus/dbus-auth.c (record_mechanisms): memleak fixes
      
      	* dbus/dbus-sysdeps.c (_dbus_string_save_to_file): fix some
      	memleaks
      
      	* dbus/dbus-keyring.c (add_new_key): fix a memleak, and
      	on realloc be sure to update the pointer in the keyring
      
      	* dbus/dbus-string.c (_dbus_string_zero): compensate for align
      	offset to avoid writing to unallocated memory
      
      	* dbus/dbus-auth.c (process_rejected): return FALSE if we fail to
      	try the next mechanism, so we properly handle OOM
      
      	* dbus/dbus-keyring.c (_dbus_keyring_new_homedir): fix double-free
      	on OOM.
      	(_dbus_keyring_new): fix OOM bug
      	(_dbus_keyring_new_homedir): always set error; impose a maximum
      	number of keys we'll load from the file, mostly to speed up the
      	test suite and make its OOM checks more useful, but also for
      	general sanity.
      
      	* dbus/dbus-auth.c (process_error_server): reject authentication
      	if we get an error from the client
      	(process_cancel): on cancel, send REJECTED, per the spec
      	(process_error_client): send CANCEL if we get an error from the
      	server.
      d3fb6f35
    • Havoc Pennington's avatar
      2003-04-18 Havoc Pennington <hp@pobox.com> · e0b284c7
      Havoc Pennington authored
      	* dbus/dbus-mainloop.c (_dbus_loop_iterate): fix UMR in verbose
      	debug spew
      
      	* dbus/dbus-auth.c (handle_client_data_cookie_sha1_mech): fix OOM
      	handling problem
      
      	* dbus/dbus-keyring.c (_dbus_keyring_new_homedir): only whine
      	about DBUS_TEST_HOMEDIR once
      
      	* bus/Makefile.am (TESTS_ENVIRONMENT): put DBUS_TEST_HOMEDIR in
      	the environment
      
      	* bus/dispatch.c (bus_dispatch_sha1_test): actually load sha1
      	config file so we test the right thing
      
      	Throughout: assorted docs improvements
      e0b284c7
    • Havoc Pennington's avatar
      2003-04-18 Havoc Pennington <hp@pobox.com> · 3df260c0
      Havoc Pennington authored
      	* glib/dbus-gmain.c: adapt to watch changes
      
      	* bus/bus.c, bus/activation.c, etc.: adjust to watch changes
      
      	* dbus/dbus-server.h: remove dbus_server_handle_watch
      
      	* dbus/dbus-connection.h: remove dbus_connection_handle_watch
      
      	* dbus/dbus-watch.c (dbus_watch_handle): change DBusWatch to work
      	like DBusTimeout, so we don't need dbus_connection_handle_watch
      	etc.
      3df260c0
  6. 17 Apr, 2003 4 commits
    • Havoc Pennington's avatar
      2003-04-17 Havoc Pennington <hp@redhat.com> · 88cd5da3
      Havoc Pennington authored
      	* dbus/dbus-userdb.c, dbus/dbus-sysdeps.c: redo all the passwd
      	database usage so it all goes via the DBusUserDatabase cache.
      88cd5da3
    • Havoc Pennington's avatar
      2003-04-17 Havoc Pennington <hp@redhat.com> · 4219b08b
      Havoc Pennington authored
      	* dbus/dbus-mainloop.c (_dbus_loop_iterate): fix logic so that if
      	there was an OOM watch we skipped, we always return TRUE so we
      	iterate again to have a look at it again. Fixes test suite hang.
      	Code rearrangement also lets us lose some memset and only iterate
      	over callbacks once.
      
      	* bus/driver.c (bus_driver_handle_message): sense of test for
      	reply was backward
      4219b08b
    • Havoc Pennington's avatar
      2003-04-16 Havoc Pennington <hp@pobox.com> · dac0a1f8
      Havoc Pennington authored
      	* doc/dbus-specification.sgml: make spec say serials are unsigned
      
      	* dbus/dbus-message.h: change message serials to unsigned
      
      	* dbus/dbus-connection.c: adapt to message serials being unsigned
      dac0a1f8
    • Havoc Pennington's avatar
      2003-04-15 Havoc Pennington <hp@pobox.com> · 7c022a80
      Havoc Pennington authored
      	* bus/bus.c: create and keep around a shared DBusUserDatabase
      	object.
      
      	* bus/connection.c (bus_connection_get_groups): don't cache
      	groups for user in the connection object, since user database
      	object now does that.
      7c022a80
  7. 16 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-16 Havoc Pennington <hp@redhat.com> · 4b45f179
      Havoc Pennington authored
      	* dbus/dbus-message.c (_dbus_message_add_size_counter): keep a
      	list of size counters
      	(_dbus_message_loader_putback_message_link): put back a popped link
      
      	* dbus/dbus-connection.c
      	(dbus_connection_set_max_live_messages_size): rename
      	max_received_size
      	(dbus_connection_get_outgoing_size): get size of outgoing
      	queue
      	(_dbus_connection_set_connection_counter): remove this cruft
      4b45f179
  8. 14 Apr, 2003 3 commits
    • Havoc Pennington's avatar
      2003-04-14 Havoc Pennington <hp@redhat.com> · fe1cb3a9
      Havoc Pennington authored
      	* dbus/dbus-userdb.c: user database abstraction, mostly to get
      	caching, but at some point we might want to be able to use a
      	different database.
      
      	* bus/dispatch.c (bus_dispatch_sha1_test): add a test that uses
      	SHA1 conf file to test the sha1 auth mechanism, since the regular
      	test always uses EXTERNAL when available.
      
      	* configure.in,
      	test/data/valid-config-files/debug-allow-all-sha1.conf.in:
      	add conf file that requires use of sha1 auth
      fe1cb3a9
    • Havoc Pennington's avatar
      2003-04-13 Havoc Pennington <hp@pobox.com> · 7c434a84
      Havoc Pennington authored
              * tools/dbus-send.c, tools/dbus-monitor.c: two utility programs
      	from Philip Blundell to send messages and monitor them.
      7c434a84
    • Havoc Pennington's avatar
      2003-04-13 Havoc Pennington <hp@pobox.com> · 777707ed
      Havoc Pennington authored
      	* dbus/dbus-mainloop.c: fix some reentrancy issues by refcounting
      	callbacks
      
      	* test/data/valid-config-files/debug-allow-all.conf.in: allow all
      	users
      
      	* dbus/dbus-transport.c (_dbus_transport_get_dispatch_status):
      	fix to only recover unused bytes if we're already authenticated
      	(_dbus_transport_get_is_authenticated): fix to still mark us
      	authenticated if there are unused bytes.
      
      	* bus/dispatch.c: implement security policy checking
      
      	* bus/connection.c (bus_transaction_send_from_driver): new
      
      	* bus/bus.c (bus_context_check_security_policy): new
      
      	* bus/dispatch.c (send_service_nonexistent_error): delete this,
      	now we just set the DBusError and it gets converted to an error
      	reply.
      
      	* bus/connection.c (allow_user_function): enable code using actual
      	data from the config file
      
      	* bus/policy.c (list_allows_user): handle wildcard rules for
      	user/group connection perms
      777707ed
  9. 13 Apr, 2003 2 commits
    • Havoc Pennington's avatar
      2003-04-13 Havoc Pennington <hp@pobox.com> · 8aabca8d
      Havoc Pennington authored
      	* bus/config-parser.c: Load up the BusPolicy and BusPolicyRules
      
      	* dbus/dbus-sysdeps.c (_dbus_get_user_id): new function
      
      	* bus/policy.c (bus_policy_append_mandatory_rule)
      	(bus_policy_append_default_rule, bus_policy_append_user_rule)
      	(bus_policy_append_group_rule): new functions
      8aabca8d
    • Havoc Pennington's avatar
      2003-04-12 Havoc Pennington <hp@pobox.com> · b09b7ca3
      Havoc Pennington authored
      	* bus/config-parser.c (bus_config_parser_new): fix a memleak
      
      	* dbus/dbus-sysdeps.c: change DBusCredentials to use longs for
      	the pid/gid/uid, just for paranoia.
      
      	* test/break-loader.c (randomly_do_n_things): find a byte
      	containing a type code, and randomly change it to a different
      	type code.
      b09b7ca3
  10. 12 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-12 Havoc Pennington <hp@pobox.com> · bc983ecf
      Havoc Pennington authored
      	* bus/policy.h: change BusPolicy to be the thing from the config
      	file, and rename old BusPolicy to BusClientPolicy
      
      	* bus/bus.c, bus/connection.c, bus/config-parser.c: change to
      	match change in how policy works
      
      	* dbus/dbus-internals.h: mark assert_not_reached as
      	__attribute((noreturn))__
      bc983ecf
  11. 11 Apr, 2003 11 commits
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@redhat.com> · 4b773b4a
      Havoc Pennington authored
      	* configure.in: add another directory to look for qt in.
      4b773b4a
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@redhat.com> · f4692372
      Havoc Pennington authored
      	* AUTHORS: add Colin Walters
      f4692372
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@redhat.com> · e486b3a6
      Havoc Pennington authored
      	* NEWS: update
      
      	* configure.in: 0.9
      e486b3a6
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@redhat.com> · a7ca4d94
      Havoc Pennington authored
      	* bus/messagebus.in: remove pid file when stopping the
      	message bus, since the bus won't have privileges to remove it
      	itself.
      a7ca4d94
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@redhat.com> · fff4709b
      Havoc Pennington authored
      	* bus/bus.c (bus_context_new): move credentials change after
      	creating pidfile
      fff4709b
    • Havoc Pennington's avatar
      add DBUS_TYPE_INT64 · 477507c4
      Havoc Pennington authored
      477507c4
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@pobox.com> · 77eac31a
      Havoc Pennington authored
      	* test/decode-gcov.c: add "below average functions" to the
      	coverage report, and change how some of the code works.
      
      	* bus/test-main.c: bracket some stuff in DBUS_BUILD_TESTS so it's
      	not in the coverage stats.
      
      	* test/test-service.c (main): use _dbus_verbose not fprintf in a
      	couple places so running the test suite doesn't result in megaspam.
      77eac31a
    • Havoc Pennington's avatar
      2003-04-11 Havoc Pennington <hp@pobox.com> · a03e6267
      Havoc Pennington authored
      	* bus/dispatch.c (check_existent_service_activation): accept a no
      	memory error in a place we didn't before
      
      	* bus/test.c (bus_test_run_everything): remove hacky "do it twice
      	in case the first one failed," since the test suite is less
      	broken now.
      a03e6267
    • Havoc Pennington's avatar
      2003-04-10 Havoc Pennington <hp@pobox.com> · 78e79022
      Havoc Pennington authored
      	* bus/dispatch.c (check_segfault_service_activation): add test
      	for launching an executable that just crashes.
      
      	* test/test-segfault.c (main): try setting coredumpsize to 0 so we
      	don't leave a million cores. We'll see how portable this is.
      78e79022
    • Havoc Pennington's avatar
      2003-04-10 Havoc Pennington <hp@pobox.com> · eb63ba50
      Havoc Pennington authored
      	* dbus/dbus-spawn.c (_dbus_spawn_async_with_babysitter): move all
      	the possible parent failures before we fork, so that we don't
      	fail to create a babysitter after creating the child.
      
      	* bus/activation.c (bus_activation_activate_service): kill child
      	if we don't successfully complete the activation.
      eb63ba50
    • Havoc Pennington's avatar
      2003-04-10 Havoc Pennington <hp@redhat.com> · 6be547d3
      Havoc Pennington authored
      	* dbus/dbus-connection.c (dbus_connection_flush): don't spin on
      	the connection if it's disconnected
      
      	* bus/activation.c (bus_activation_service_created): use new
      	transaction features to roll back removal of pending activation if
      	we don't successfully create the service after all. Don't remove
      	pending activation if the function fails.
      
      	* dbus/dbus-list.c (_dbus_list_insert_before_link)
      	(_dbus_list_insert_after_link): new code to facilitate
      	services.c fixes
      
      	* dbus/dbus-hash.c (_dbus_hash_table_insert_string_preallocated):
      	new functionality, so we can preallocate the ability to insert
      	into a hash table.
      
      	* bus/connection.c (bus_transaction_add_cancel_hook): new function
      	allowing us to put custom hooks in a transaction to be used for
      	cancelling said transaction
      
      	* doc/dbus-specification.sgml: add some discussion of secondary
      	service owners, and disallow zero-length service names
      
      	* bus/services.c (bus_registry_acquire_service): new function,
      	splits out part of bus_driver_handle_acquire_service() and fixes
      	a bug where we didn't remove the service doing the acquiring
      	from the secondary queue if we failed to remove the current owner
      	from the front of the queue.
      6be547d3
  12. 10 Apr, 2003 6 commits
    • Alexander Larsson's avatar
      2003-04-10 Alexander Larsson <alexl@redhat.com> · 7074a246
      Alexander Larsson authored
      	* doc/dbus-specification.sgml:
      	s/org.freedesktop.Broadcast/org.freedesktop.DBus.Broadcast/
      7074a246
    • Alexander Larsson's avatar
      2003-04-10 Alexander Larsson <alexl@redhat.com> · e11e4ca8
      Alexander Larsson authored
      	* bus/.cvsignore:
      	* glib/.cvsignore:
      	* test/.cvsignore:
      	Added files to cvsignore
      
      	* dbus/dbus-message.h:
      	* dbus/dbus-message.c: (dbus_message_iter_get_named):
      	Make get_named() take two out argument and return a boolean.
      	(dbus_message_iter_get_args_valist):
      	Update usage of get_named().
      	(dbus_message_iter_append_byte):
      	Fix typo
      	(dbus_message_iter_append_named)
      	Fix typo
      	(message_iter_test), (check_message_handling_type), (_dbus_message_test):
      	More tests.
      e11e4ca8
    • Alexander Larsson's avatar
      2003-04-10 Alexander Larsson <alexl@redhat.com> · e84c3a03
      Alexander Larsson authored
      	* dbus/dbus-marshal.[ch]:
      	Add array_type_pos argument to _dbus_marshal_validate_arg.
      	Let you pass a NULL end_pos to _dbus_marshal_validate_type.
      
      	* dbus/dbus-message.[ch]:
      	Multi-dimensional arrays have full type specification in the
      	outermost array. Iter code re-arranged to handle this.
      	Added some more iter tests.
      
      	* doc/dbus-specification.sgml:
      	Add me to authors.
      	Remove old FIXME.
      	Update new array encoding description.
      	Correct DBUS_SERVICE_FLAGS_REPLACE_EXISTING description.
      
      	* test/data/invalid-messages/array-with-mixed-types.message:
      	* test/data/valid-messages/array-of-array-of-uint32.message:
      	Change to the new array format.
      
      	* test/data/invalid-messages/too-short-dict.message:
      	Fix bug in test.
      
      	* test/data/valid-messages/recursive-types.message:
      	Fix up and extend test.
      e84c3a03
    • Havoc Pennington's avatar
      2003-04-10 Havoc Pennington <hp@pobox.com> · 51781f54
      Havoc Pennington authored
      	* bus/dispatch.c: lots of fixes
      
      	* dbus/dbus-mainloop.c (_dbus_loop_dispatch): export
      	(_dbus_loop_iterate): remove old "quit if no callbacks" code,
      	that was crack, broke the test service.
      
      	* dbus/dbus-transport.c (_dbus_transport_open): fix error
      	handling to avoid piling up errors if we get a failure on the
      	first address.
      
      	* dbus/dbus-internals.c (_dbus_real_assert_not_reached): include
      	pid in assertion failures.
      
      	* dbus/dbus-mainloop.c (_dbus_loop_iterate): use static arrays up
      	to some fixed size of file descriptor array. Don't return TRUE
      	anytime a timeout exists, that led to lots of busy loop silliness
      	in the tests.
      51781f54
    • Havoc Pennington's avatar
      2003-04-09 Havoc Pennington <hp@redhat.com> · 49f6e320
      Havoc Pennington authored
      	* dbus/dbus-mainloop.c (check_timeout): fix timeouts, I thought
      	I'd checked this in earlier but hadn't.
      49f6e320
    • Havoc Pennington's avatar
      - · 231fc084
      Havoc Pennington authored
      231fc084
  13. 09 Apr, 2003 3 commits
    • Havoc Pennington's avatar
      2003-04-09 Havoc Pennington <hp@redhat.com> · 7caf646f
      Havoc Pennington authored
      	* test/test-utils.c: use dispatch status function to fix this up
      
      	* bus/connection.c (connection_watch_callback): don't dispatch
      	from here
      	(connection_timeout_callback): don't dispatch from here
      	(bus_connections_setup_connection): set the dispatch status function
      	(bus_connection_disconnected): unset it
      
      	* dbus/dbus-mainloop.c (_dbus_loop_queue_dispatch): new function
      	used to add a connection to be dispatched
      	(_dbus_loop_iterate): do the dispatching at the end of each
      	iteration
      
      	* dbus/dbus-connection.c
      	(dbus_connection_set_dispatch_status_function): new function
      	allowing us to fix up main loop usage
      	(_dbus_connection_last_unref): free all the various function
      	user data
      	(dbus_connection_dispatch): call the DispatchStatusFunction
      	whenever this function returns
      	(dbus_connection_handle_watch): call DispatchStatusFunction
      	(dbus_connection_send_with_reply_and_block): call DispatchStatusFunction
      	(reply_handler_timeout): call DispatchStatusFunction
      	(dbus_connection_flush): call DispatchStatusFunction
      7caf646f
    • Havoc Pennington's avatar
      2003-04-09 Havoc Pennington <hp@redhat.com> · 1708094c
      Havoc Pennington authored
      	* dbus/dbus-bus.c (dbus_bus_register): fix up error handling and
      	a memory leak
      
      	* bus/dispatch.c (check_service_activated): fix bug in test
      
      	* dbus/dbus-mainloop.c (check_timeout): fix this up
      
      	* dbus/dbus-internals.c (_dbus_verbose_real): include PID in
      	verbose output so we can sort out output from different processes,
      	e.g. in the activation case.
      1708094c
    • Havoc Pennington's avatar
      2003-04-08 Colin Walters <walters@gnu.org> · 0e1945b3
      Havoc Pennington authored
       	* bus/bus.c (struct BusContext) [pidfile]: New member, to store
       	the pid file.
       	(bus_context_new): Set it.
       	(bus_context_unref): Use it to delete the pid file.
      0e1945b3
  14. 08 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-08 Havoc Pennington <hp@redhat.com> · 03663856
      Havoc Pennington authored
      	* test/data/invalid-messages/array-with-mixed-types.message:
      	regression test that fails for the moment
      
      	* dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): reorder
      	tests for convenience
      
      	* dbus/dbus-marshal.c (_dbus_marshal_validate_arg): don't allow
      	array of nil, it broke things.
      
      	* test/data/invalid-messages/array-of-nil.message: regression test
      
      	* test/data/valid-messages/array-of-array-of-uint32.message:
      	happened to write this so added it to suite
      03663856