1. 27 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-27 Havoc Pennington <hp@pobox.com> · e8d396ef
      Havoc Pennington authored
      	Unbreak my code...
      
      	* dbus/dbus-transport.c (_dbus_transport_get_dispatch_status):
      	report correct status if we finish processing authentication
      	inside this function.
      
      	* bus/activation.c (try_send_activation_failure): use
      	bus_transaction_send_error_reply
      
      	* bus/connection.c (bus_connection_get_groups): return an error
      	explaining the problem
      
      	* bus/bus.c (bus_context_check_security_policy): implement
      	restriction here that inactive connections can only send the
      	hello message. Also, allow bus driver to send anything to
      	any recipient.
      
      	* bus/connection.c (bus_connection_complete): create the
      	BusClientPolicy here instead of on-demand.
      	(bus_connection_get_policy): don't return an error
      
      	* dbus/dbus-message.c (dbus_message_new_error_reply): allow NULL
      	sender field in message being replied to
      
      	* bus/bus.c (bus_context_check_security_policy): fix silly typo
      	causing it to return FALSE always
      
      	* bus/policy.c (bus_client_policy_check_can_send): fix bug where
      	we checked sender rather than destination
      e8d396ef
  2. 25 Apr, 2003 3 commits
    • Havoc Pennington's avatar
      2003-04-25 Havoc Pennington <hp@redhat.com> · b3bd48ed
      Havoc Pennington authored
              test suite is slightly hosed at the moment, will fix soon
      
      	* bus/connection.c (bus_connections_expire_incomplete): fix to
      	properly disable the timeout when required
      	(bus_connection_set_name): check whether we can remove incomplete
      	connections timeout after we complete each connection.
      
      	* dbus/dbus-mainloop.c (check_timeout): fix this up a bit,
      	probably still broken.
      
      	* bus/services.c (bus_registry_acquire_service): implement max
      	number of services owned, and honor allow/deny rules on which
      	services a connection can own.
      
      	* bus/connection.c (bus_connection_get_policy): report errors here
      
      	* bus/activation.c: implement limit on number of pending
      	activations
      b3bd48ed
    • Havoc Pennington's avatar
      2003-04-25 Havoc Pennington <hp@redhat.com> · 4b87aa40
      Havoc Pennington authored
      	* dbus/dbus-transport.c (_dbus_transport_get_unix_user): fix bug
      	where we used >= 0 instead of != DBUS_UID_UNSET.
      4b87aa40
    • Havoc Pennington's avatar
      2003-04-25 Havoc Pennington <hp@redhat.com> · 9c010fbc
      Havoc Pennington authored
      	* glib/dbus-gmain.c (remove_watch): fix for a crash when watches
      	were toggled without add/remove, fix from Anders Gustafsson
      9c010fbc
  3. 24 Apr, 2003 6 commits
    • Havoc Pennington's avatar
      2003-04-24 Havoc Pennington <hp@redhat.com> · 3185d7ed
      Havoc Pennington authored
      	* test/data/valid-config-files/basic.conf: add <limit> tags to
      	this test
      
      	* bus/config-parser.h, bus/config-parser.c, bus/bus.c: Implement
      	<limit> tag in configuration file.
      3185d7ed
    • Havoc Pennington's avatar
      2003-04-24 Havoc Pennington <hp@redhat.com> · 1820f3bd
      Havoc Pennington authored
      	* bus/dispatch.c: somehow missed some name_is
      
      	* dbus/dbus-timeout.c (_dbus_timeout_set_enabled)
      	(_dbus_timeout_set_interval): new
      
      	* bus/connection.c (bus_connections_setup_connection): record time
      	when each connection is first set up, and expire them after the
      	auth timeout passes.
      1820f3bd
    • Havoc Pennington's avatar
      remove TODO item for the name_is rename · 0ed8f3f3
      Havoc Pennington authored
      0ed8f3f3
    • Havoc Pennington's avatar
      2003-04-24 Havoc Pennington <hp@redhat.com> · e8bf15b2
      Havoc Pennington authored
      	* dbus/dbus-message.c (dbus_message_name_is): rename
      	(dbus_message_service_is): rename
      	(dbus_message_sender_is): rename
      	(dbus_message_get_service): rename
      e8bf15b2
    • Havoc Pennington's avatar
      2003-04-24 Havoc Pennington <hp@redhat.com> · c9cd648f
      Havoc Pennington authored
      	* configure.in: add --enable-checks
      
      	* dbus/dbus-message.c (dbus_message_new): reverse name/service arguments
      
      	* dbus/dbus-connection.c (dbus_connection_preallocate_send): fix
      	to use thread locks.
      	(_dbus_connection_handler_destroyed_locked): move some private
      	functions into proper docs group
      
      	* dbus/dbus-internals.h: add _dbus_return_if_fail,
      	_dbus_return_val_if_fail
      
      	Throughout: use dbus_return_if_fail
      c9cd648f
    • 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
  14. 10 Apr, 2003 1 commit