1. 13 Apr, 2005 1 commit
    • David Zeuthen's avatar
      2005-04-13 David Zeuthen <davidz@redhat.com> · 44656f53
      David Zeuthen authored
      	* bus/selinux.c: Add c-file-style to top of file
      	(log_audit_callback): Don't free the data here anymore
      	(bus_selinux_check): Don't take spid and tpid since appending
      	that to auxdata may OOM.
      	(bus_selinux_allows_acquire_service): Handle OOM and signal back
      	to the caller if we are OOM by taking an error object.
      	(bus_selinux_allows_send): -do-
      
      	* bus/selinux.h: Fix prototypes for bus_selinux_allows_acquire_service
      	and bus_selinux_allows_send
      
      	* bus/bus.c (bus_context_check_security_policy): Pass error and
      	pass on OOM thrown by bus_selinux_allows_send()
      
      	* bus/services.c (bus_registry_acquire_service): Pass error and
      	pass on OOM thrown by bus_selinux_allows_acquire_service()
      44656f53
  2. 17 Feb, 2005 1 commit
    • Colin Walters's avatar
      2005-02-17 Colin Walters <walters@verbum.org> · 24889520
      Colin Walters authored
      	* dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_DBUS):
      	Rename to DBUS_SERVICE_DBUS.
      	(DBUS_PATH_ORG_FREEDESKTOP_DBUS): Rename to DBUS_PATH_DBUS.
      	(DBUS_PATH_ORG_FREEDESKTOP_LOCAL): Rename to DBUS_PATH_LOCAL.
      	(DBUS_INTERFACE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_INTERFACE_DBUS.
      	(DBUS_INTERFACE_ORG_FREEDESKTOP_INTROSPECTABLE): Rename to
      	DBUS_INTERFACE_INTROSPECTABLE.
      	(DBUS_INTERFACE_ORG_FREEDESKTOP_PROPERTIES): Rename to
      	DBUS_INTERFACE_PROPERTIES.
      	(DBUS_INTERFACE_ORG_FREEDESKTOP_PEER): Rename to
      	DBUS_INTERFACE_PEER.
      	(DBUS_INTERFACE_ORG_FREEDESKTOP_LOCAL):
      	DBUS_INTERFACE_LOCAL.
      
      	All other users of those constants have been changed.
      
      	* bus/driver.c (bus_driver_handle_introspect): Use constants.
      
      	* glib/dbus-gobject.c (handle_introspect): Use constants.
      
      	* doc/dbus-faq.xml, doc/dbus-specification.xml: Update for rename.
      24889520
  3. 09 Nov, 2004 1 commit
    • Colin Walters's avatar
      2004-11-09 Colin Walters <walters@verbum.org> · 935a41a0
      Colin Walters authored
      	* dbus/dbus-string.c (_dbus_string_get_length): New
      	function, writes DBusString to C buffer.
      
      	* dbus/dbus-string.h: Prototype it.
      
      	* dbus/dbus-message.c (dbus_message_type_to_string): New
      	function, converts message type into C string.
      
      	* dbus/dbus-message.h: Prototype it.
      
      	* bus/selinux.c (bus_selinux_check): Take source pid,
      	target pid, and audit data.  Pass audit data to
      	avc_has_perm.
      	(log_audit_callback): New function, appends extra
      	audit information.
      	(bus_selinux_allows_acquire_service): Also take
      	service name, add it to audit data.
      	(bus_selinux_allows_send): Also take message
      	type, interface, method member, error name,
      	and destination, and add them to audit data.
      	(log_cb): Initialize func_audit.
      
      	* bus/selinux.h (bus_selinux_allows_acquire_service)
      	(bus_selinux_allows_send): Update prototypes
      
      	* bus/services.c (bus_registry_acquire_service): Pass
      	service name to bus_selinux_allows_acquire_service.
      
      	* bus/bus.c (bus_context_check_security_policy): Pass
      	additional audit data.  Move assignment of dest
      	to its own line.
      935a41a0
  4. 07 Nov, 2004 1 commit
    • Colin Walters's avatar
      2004-11-07 Colin Walters <walters@verbum.org> · cdac3e05
      Colin Walters authored
      	* bus/bus.c (load_config): Break into three
      	separate functions: process_config_first_time_only,
      	process_config_every_time, and process_config_postinit.
      	(process_config_every_time): Move call of
      	bus_registry_set_service_context_table into
      	process_config_postinit.
      	(process_config_postinit): New function, does
      	any processing that needs to happen late
      	in initialization (and also on reload).
      	(bus_context_new): Instead of calling load_config,
      	open config parser here and call process_config_first_time_only
      	and process_config_every_time directly.  Later, after
      	we have forked but before changing UID,
      	invoke bus_selinux_full_init, and then call
      	process_config_postinit.
      	(bus_context_reload_config): As in bus_context_new,
      	load parse file inside here, and call process_config_every_time
      	and process_config_postinit.
      
      	* bus/services.h, bus/services.c
      	(bus_registry_set_service_context_table): Rename
      	from bus_registry_set_sid_table.  Take string hash from config
      	parser, and convert them here into SIDs.
      
      	* bus/config-parser.c (struct BusConfigParser): Have
      	config parser only store a mapping of service->context
      	string.
      	(merge_service_context_hash): New function.
      	(merge_included): Merge context string hashes instead
      	of using bus_selinux_id_table_union.
      	(bus_config_parser_new): Don't use bus_selinux_id_table_new;
      	simply create a new string hash.
      	(bus_config_parser_unref): Unref it.
      	(start_selinux_child): Simply insert strings into hash,
      	don't call bus_selinux_id_table_copy_over.
      
      	* bus/selinux.h, bus/selinux.c (bus_selinux_id_table_union)
      	(bus_selinux_id_table_copy_over): Delete.
      cdac3e05
  5. 29 Oct, 2004 1 commit
    • Colin Walters's avatar
      2004-10-29 Colin Walters <walters@redhat.com> · e430788a
      Colin Walters authored
      	* dbus/dbus-sysdeps.h (_dbus_become_daemon): Also take
      	parameter for fd to write pid to.
      
      	* dbus/dbus-sysdeps.c (_dbus_become_daemon): Implement it.
      
      	* bus/bus.c (bus_context_new): Pass print_pid_fd
      	to _dbus_become_daemon (bug #1720)
      e430788a
  6. 12 Sep, 2004 1 commit
    • David Zeuthen's avatar
      2004-09-12 David Zeuthen <david@fubar.dk> · a24270a4
      David Zeuthen authored
      	Patch from Kay Sievers <kay.sievers@vrfy.org>
      
      	* bus/bus.c (bus_context_new):
      	* bus/bus.h:
      	* bus/main.c (usage)
      	(main):
      	Add commandline option --nofork to override configuration file
      	setting.
      a24270a4
  7. 10 Aug, 2004 2 commits
  8. 30 Jul, 2004 1 commit
    • Havoc Pennington's avatar
      2004-07-24 Havoc Pennington <hp@redhat.com> · 1e9b185b
      Havoc Pennington authored
      	SELinux support from Matthew Rickard <mjricka@epoch.ncsc.mil>
      
      	* bus/selinux.c, bus/selinux.h: new file encapsulating selinux
      	functionality
      
      	* configure.in: add --enable-selinux
      
      	* bus/policy.c (bus_policy_merge): add FIXME to a comment
      
      	* bus/main.c (main): initialize and shut down selinux
      
      	* bus/connection.c: store SELinux ID on each connection, to avoid
      	repeated getting of the string context and converting it into
      	an ID
      
      	* bus/bus.c (bus_context_get_policy): new accessor, though it
      	isn't used
      	(bus_context_check_security_policy): check whether the security
      	context of sender connection can send to the security context of
      	recipient connection
      
      	* bus/config-parser.c: add parsing for <selinux> and <associate>
      
      	* dbus/dbus-transport.c (_dbus_transport_get_unix_fd): to
      	implement dbus_connection_get_unix_fd()
      
      	* dbus/dbus-connection.c (dbus_connection_get_unix_fd): new
      	function, used by the selinux stuff
      1e9b185b
  9. 29 May, 2004 1 commit
    • Havoc Pennington's avatar
      2004-05-29 Havoc Pennington <hp@redhat.com> · 7c77664c
      Havoc Pennington authored
      	* bus/config-parser.c (process_test_valid_subdir): temporarily
      	stop testing config parser OOM handling, since expat has issues
      	http://freedesktop.org/pipermail/dbus/2004-May/001153.html
      
      	* bus/dbus-daemon-1.1.in: change requested_reply to
      	send_requested_reply/receive_requested_reply so we can send the
      	replies, not just receive them.
      
      	* bus/config-parser.c: parse the new
      	send_requested_reply/receive_requested_reply
      
      	* bus/policy.c (bus_client_policy_check_can_send): add
      	requested_reply argument and use it
      
      	* bus/bus.c (bus_context_check_security_policy): pass through
      	requested_reply status to message send check
      
      	* bus/system.conf.in: adapt to requested_reply change
      7c77664c
  10. 21 Apr, 2004 1 commit
    • Olivier Andrieu's avatar
      * dbus/dbus-message.c (decode_header_data, decode_string_field): · dd8b1b1d
      Olivier Andrieu authored
      fix incorrect setting of .name_offset in the HeaderField (it was
      off by two bytes, positioned right after the name and typecode)
      
      * bus/bus.c (bus_context_new, bus_context_unref): test before
      calling dbus_server_free_data_slot and _dbus_user_database_unref
      in case of an error.
      
      * tools/Makefile.am: add $(DBUS_GLIB_TOOL_LIBS), xml libs needed
      by libdbus-gtool.
      dd8b1b1d
  11. 16 Apr, 2004 1 commit
    • Jon Trowbridge's avatar
      2004-04-15 Jon Trowbridge <trow@ximian.com> · 600e411f
      Jon Trowbridge authored
      	    * bus/main.c (signal_handler): Reload the configuration files
      	    on SIGHUP.
      	    (main): Set up our SIGHUP handler.
      
      	    * bus/bus.c (struct BusContext): Store the config file, user and
      	    fork flag in the BusContext.
      	    (process_config_first_time_only): Added.  Contains the code
      	    (previously in bus_context_new) for setting up the BusContext from
      	    the BusConfigParser that should only be run the first time the
      	    config files are read.
      	    (process_config_every_time): Added.  Contains the code (previously
      	    in bus_context_new) for setting up the BusContext from the
      	    BusConfigParser that should be run every time the config files are
      	    read.
      	    (load_config): Added.  Builds a BusConfigParser from the config
      	    files and passes the resulting structure off to
      	    process_config_first_time_only (assuming this is the first time)
      	    and process_config_every_time.
      	    (bus_context_new): All of the config-related code has been moved
      	    to process_config_first_time_only and process_config_every_time.
      	    Now this function just does the non-config-related initializations
      	    and calls load_config.
      	    (bus_context_reload_config): Added.
      600e411f
  12. 09 Apr, 2004 1 commit
    • Jon Trowbridge's avatar
      2004-04-09 Jon Trowbridge <trow@ximian.com> · e039be58
      Jon Trowbridge authored
      	    * bus/config-parser.c (bus_config_parser_new): Added a 'parent'
      	    argument.  If non-null, the newly-constructed BusConfigParser will
      	    be initialized with the parent's BusLimits instead of the default
      	    values.
      	    (include_file): When including a config file, pass in
      	    the current parser as the parent and then copy the BusLimits
      	    from the included BusConfigParser pack to the current parser.
      	    (process_test_valid_subdir): Renamed from process_test_subdir.
      	    (process_test_equiv_subdir): Added.  Walks through a directory,
      	    descending into each subdirectory and loading the config files
      	    it finds there.  If any subdirectory contains two config files
      	    that don't produce identical BusConfigParser structs, fail.
      	    For now, the BusConfigParser's BusPolicies are not compared.
      	    (bus_config_parser_test): Call both process_test_valid_subdir and
      	    process_test_equiv_subdir.
      
      	    * bus/config-loader-libxml.c (bus_config_load): Take a parent
      	    argument and pass it along to the call to bus_config_parser_new.
      	    Also made a few small changes to allow this code to compile.
      
      	    * bus/config-loader-expat.c (bus_config_load): Take a parent
      	    argument and pass it along to the call to bus_config_parser_new.
      
      	    * bus/bus.c (bus_context_new): Load the config file
      	    with a NULL parent argument.
      e039be58
  13. 02 Dec, 2003 1 commit
  14. 27 Nov, 2003 1 commit
  15. 22 Oct, 2003 1 commit
  16. 21 Oct, 2003 1 commit
    • Havoc Pennington's avatar
      2003-10-20 Havoc Pennington <hp@redhat.com> · 75742242
      Havoc Pennington authored
              hmm, make check is currently not passing.
      
      	* doc/dbus-specification.xml: add requirement that custom type
      	names follow the same rules as interface names.
      
      	* dbus/dbus-protocol.h: change some of the byte codes, to avoid
      	duplication and allow 'c' to be 'custom'; dict is now 'm' for
      	'map'
      
      	* doc/dbus-specification.xml: update type codes to match
      	dbus-protocol.h, using the ASCII byte values. Rename type NAMED to
      	CUSTOM. Add type OBJECT_PATH to the spec.
      
      2003-10-17  Havoc Pennington  <hp@redhat.com>
      
      	* bus/driver.c (create_unique_client_name): use "." as separator
      	in base service names instead of '-'
      
      	* dbus/dbus-string.c (_dbus_string_get_byte): allow getting nul
      	byte at the end of the string
      
      	* dbus/dbus-internals.h (_DBUS_LIKELY, _DBUS_UNLIKELY): add
      	optimization macros since string validation seems to be a slow
      	point.
      
      	* doc/dbus-specification.xml: restrict valid
      	service/interface/member/error names. Add test suite code for the
      	name validation.
      
      	* dbus/dbus-string.c: limit service/interface/member/error names
      	to [0-9][A-Z][a-z]_
      
      	* dbus/dbus-connection.c (dbus_connection_dispatch): add missing
      	format arg to verbose spew
      
      	* glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): if not out of
      	memory, return instead of g_error
      
      	* test/test-service.c (path_message_func): support emitting a
      	signal on request
      
      	* dbus/dbus-bus.c (init_connections_unlocked): only fill in
      	activation bus type if DBUS_BUS_ACTIVATION was set; default to
      	assuming the activation bus was the session bus so that services
      	started manually will still register.
      	(init_connections_unlocked): fix so that in OOM situation we get
      	the same semantics when retrying the function
      
      	* test/test-service.c (main): change to use path registration, to
      	test those codepaths; register with DBUS_BUS_ACTIVATION rather
      	than DBUS_BUS_SESSION
      75742242
  17. 16 Oct, 2003 2 commits
    • Havoc Pennington's avatar
      2003-10-16 Havoc Pennington <hp@redhat.com> · c20c4181
      Havoc Pennington authored
      	* bus/bus.c (struct BusContext): remove struct field I didn't mean
      	to put there
      c20c4181
    • Havoc Pennington's avatar
      2003-10-16 Havoc Pennington <hp@redhat.com> · d6e1b2ad
      Havoc Pennington authored
      	* bus/connection.c (bus_pending_reply_expired): either cancel or
      	execute, not both
      	(bus_connections_check_reply): use unlink, not remove_link, as we
      	don't want to free the link; fixes double free mess
      
      	* dbus/dbus-pending-call.c (dbus_pending_call_block): fix in case
      	where no reply was received
      
      	* dbus/dbus-connection.c (_dbus_pending_call_complete_and_unlock):
      	fix a refcount leak
      
      	* bus/signals.c (match_rule_matches): add special cases for the
      	bus driver, so you can match on sender/destination for it.
      
      	* dbus/dbus-sysdeps.c (_dbus_abort): print backtrace if
      	DBUS_PRINT_BACKTRACE is set
      
      	* dbus/dbus-internals.c: add pid to assertion failure messages
      
      	* dbus/dbus-connection.c: add message type code to the debug spew
      
      	* glib/dbus-gproxy.c (gproxy_get_match_rule): match rules want
      	sender=foo not service=foo
      
      	* dbus/dbus-bus.c (dbus_bus_get): if the activation bus is the
      	session bus but DBUS_SESSION_BUS_ADDRESS isn't set, use
      	DBUS_ACTIVATION_ADDRESS instead
      
      	* bus/activation.c: set DBUS_SESSION_BUS_ADDRESS,
      	DBUS_SYSTEM_BUS_ADDRESS if appropriate
      
      	* bus/bus.c (bus_context_new): handle OOM copying bus type into
      	context struct
      
      	* dbus/dbus-message.c (dbus_message_iter_get_object_path): new function
      	(dbus_message_iter_get_object_path_array): new function (half
      	finished, disabled for the moment)
      
      	* glib/dbus-gproxy.c (dbus_gproxy_end_call): properly handle
      	DBUS_MESSAGE_TYPE_ERROR
      
      	* tools/dbus-launch.c (babysit): support DBUS_DEBUG_OUTPUT to
      	avoid redirecting stderr to /dev/null
      	(babysit): close stdin if not doing the "exit_with_session" thing
      
      	* dbus/dbus-sysdeps.c (_dbus_become_daemon): delete some leftover
      	debug code; change DBUS_DEBUG_OUTPUT to only enable stderr, not
      	stdout/stdin, so things don't get confused
      
      	* bus/system.conf.in: fix to allow replies, I modified .conf
      	instead of .conf.in again.
      d6e1b2ad
  18. 14 Oct, 2003 2 commits
    • Havoc Pennington's avatar
      2003-10-14 Havoc Pennington <hp@redhat.com> · 3251264a
      Havoc Pennington authored
      	* bus/bus.c (bus_context_check_security_policy): revamp this to
      	work more sanely with new policy-based requested reply setup
      
      	* bus/connection.c (bus_transaction_send_from_driver): set bus
      	driver messages as no reply
      
      	* bus/policy.c (bus_client_policy_check_can_receive): handle a
      	requested_reply attribute on allow/deny rules
      
      	* bus/system.conf: add <allow requested_reply="true"/>
      
      	* bus/driver.c (bus_driver_handle_message): fix check for replies
      	sent to the bus driver, which was backward. How did this ever work
      	at all though? I think I'm missing something.
      
      	* dbus/dbus-message.c (decode_header_data): require error and
      	method return messages to have a reply serial field to be valid
      	(_dbus_message_loader_queue_messages): break up this function;
      	validate that reply serial and plain serial are nonzero;
      	clean up the OOM/error handling.
      	(get_uint_field): don't return -1 from this
      	(dbus_message_create_header): fix signed/unsigned bug
      
      	* bus/connection.c (bus_connections_expect_reply): save serial of
      	the incoming message, not reply serial
      3251264a
    • Havoc Pennington's avatar
      2003-10-14 Havoc Pennington <hp@redhat.com> · 64f5ae1a
      Havoc Pennington authored
      	* bus/connection.c: implement pending reply tracking using
      	BusExpireList
      
      	* bus/bus.c (bus_context_check_security_policy): verify that a
      	reply is pending in order to allow a reply to be sent. Deny
      	messages of unknown type.
      
      	* bus/dbus-daemon-1.1.in: update to mention new resource limits
      
      	* bus/bus.c (bus_context_get_max_replies_per_connection): new
      	(bus_context_get_reply_timeout): new
      64f5ae1a
  19. 10 Oct, 2003 1 commit
    • Havoc Pennington's avatar
      2003-10-09 Havoc Pennington <hp@redhat.com> · 6a65f480
      Havoc Pennington authored
              Make matching rules theoretically work (add parser).
      
      	* bus/bus.c (bus_context_check_security_policy): fix up to handle
      	the case where destination is explicitly specified as bus driver
      	and someone else is eavesdropping.
      
      	* bus/policy.c (bus_client_policy_check_can_receive): fix up
      	definition of eavesdropping and assertion
      
      	* tools/dbus-send.c (main): use dbus_message_type_from_string
      
      	* bus/signals.c (bus_match_rule_parse): implement
      
      	* dbus/dbus-message.c (dbus_message_type_from_string): new
      
      	* dbus/dbus-errors.h (DBUS_ERROR_MATCH_RULE_INVALID): add
      6a65f480
  20. 21 Sep, 2003 1 commit
    • Havoc Pennington's avatar
      2003-09-21 Havoc Pennington <hp@pobox.com> · a683a80c
      Havoc Pennington authored
      	Get matching rules mostly working in the bus; only actually
      	parsing the rule text remains. However, the client side of
      	"signal connections" hasn't been started, this patch is only the
      	bus side.
      
      	* dbus/dispatch.c: fix for the matching rules changes
      
      	* bus/driver.c (bus_driver_handle_remove_match)
      	(bus_driver_handle_add_match): send an ack reply from these
      	method calls
      
      	* glib/dbus-gproxy.c (dbus_gproxy_begin_call): fix order of
      	arguments, reported by Seth Nickell
      
      	* bus/config-parser.c (append_rule_from_element): support
      	eavesdrop=true|false attribute on policies so match rules
      	can be prevented from snooping on the system bus.
      
      	* bus/dbus-daemon-1.1.in: consistently use terminology "sender"
      	and "destination" in attribute names; fix some docs bugs;
      	add eavesdrop=true|false attribute
      
      	* bus/driver.c (bus_driver_handle_add_match)
      	(bus_driver_handle_remove_match): handle AddMatch, RemoveMatch
      	messages
      
      	* dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_BROADCAST): get
      	rid of broadcast service concept, signals are just always broadcast
      
      	* bus/signals.c, bus/dispatch.c, bus/connection.c, bus/bus.c:
      	mostly implement matching rules stuff (currently only exposed as signal
      	connections)
      a683a80c
  21. 18 Aug, 2003 2 commits
    • Havoc Pennington's avatar
      2003-08-18 Havoc Pennington <hp@redhat.com> · 68a3c593
      Havoc Pennington authored
      	* dbus/dbus-hash.c (_dbus_hash_table_insert_two_strings): fix
      
      	* dbus/dbus-message.c (_dbus_message_loader_queue_messages): fix
      	dumb bug created earlier (wrong order of args to
      	decode_header_data())
      
      	* tools/dbus-send.c: port
      
      	* tools/dbus-print-message.c (print_message): port
      
              * test/data/*messages: port all messages over
      
              * dbus/dbus-message-builder.c: support including
      	message type
      
              * bus/driver.c: port over
      
      	* bus/dispatch.c: port over to new stuff
      
      	* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
      	rename disconnect signal to "Disconnected"
      68a3c593
    • Havoc Pennington's avatar
      2003-08-17 Havoc Pennington <hp@pobox.com> · 95717a93
      Havoc Pennington authored
      	This doesn't compile yet, but syncing up so I can hack on it from
      	work. What are branches for if not broken code? ;-)
      
      	* dbus/dbus-protocol.h: remove DBUS_HEADER_FIELD_NAME, add
      	DBUS_HEADER_FIELD_INTERFACE, DBUS_HEADER_FIELD_MEMBER,
      	DBUS_HEADER_FIELD_ERROR_NAME
      
      	* dbus/dbus-hash.c: Introduce DBUS_HASH_TWO_STRINGS as hack to use
      	for the interface+member pairs
      	(string_hash): change to use g_str_hash algorithm
      	(find_direct_function, find_string_function): refactor these to
      	share most code.
      
      	* dbus/dbus-message.c: port all of this over to support
      	interface/member fields instead of name field
      
      	* dbus/dbus-object-registry.c: port over
      
      	* dbus/dbus-string.c (_dbus_string_validate_interface): rename
      	from _dbus_string_validate_name
      
      	* bus/dbus-daemon-1.1: change file format for the
      	<deny>/<allow> stuff to match new message naming scheme
      
      	* bus/policy.c: port over
      
      	* bus/config-parser.c: parse new format
      95717a93
  22. 22 Jun, 2003 1 commit
    • Havoc Pennington's avatar
      2003-06-22 Havoc Pennington <hp@pobox.com> · 6843ad31
      Havoc Pennington authored
      	* dbus/dbus-dataslot.c (_dbus_data_slot_allocator_unref)
      	(_dbus_data_slot_allocator_alloc): rework these to keep a
      	reference count on each slot and automatically manage a global
      	slot ID variable passed in by address
      
      	* bus/bus.c: convert to new dataslot API
      
      	* dbus/dbus-bus.c: convert to new dataslot API
      
      	* dbus/dbus-connection.c: convert to new dataslot API
      
      	* dbus/dbus-server.c: convert to new dataslot API
      
      	* glib/dbus-gmain.c: ditto
      
      	* bus/test.c: ditto
      
      	* bus/connection.c: ditto
      6843ad31
  23. 16 May, 2003 1 commit
    • Havoc Pennington's avatar
      2003-05-16 Havoc Pennington <hp@redhat.com> · 306eab3e
      Havoc Pennington authored
      	* dbus/dbus-connection.c: disable verbose lock spew
      
      	* tools/dbus-send.c: add --print-reply command line option
      
      	* tools/dbus-print-message.h (print_message): new util function
      	shared by dbus-send and dbus-monitor
      
      	* tools/dbus-monitor.c (handler_func): exit on disconnect
      
      	* dbus/dbus-transport-unix.c (do_reading): if the transport is
      	disconnected, don't try to use the read_watch
      
      	* dbus/dbus-watch.c (dbus_watch_get_enabled): assert watch != NULL
      	so we can find this bug more easily
      306eab3e
  24. 04 May, 2003 1 commit
  25. 28 Apr, 2003 1 commit
    • Havoc Pennington's avatar
      2003-04-28 Havoc Pennington <hp@redhat.com> · 893d859e
      Havoc Pennington authored
      	* configure.in: 0.10
      
      	* NEWS: update
      
      	* bus/system.conf.in: add <includedir>system.d</includedir>
      
      	* dbus/dbus-userdb.c (_dbus_user_database_lookup): fix bug when
      	username was provided but not uid
      
      	* bus/config-parser.c (struct BusConfigParser): keep track of
      	whether the parser is toplevel or was included; change some
      	of the error handling if it's included.
      893d859e
  26. 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
  27. 25 Apr, 2003 1 commit
    • 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
  28. 24 Apr, 2003 2 commits
  29. 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
  30. 18 Apr, 2003 1 commit
    • 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
  31. 17 Apr, 2003 1 commit
    • 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
  32. 14 Apr, 2003 1 commit
    • 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
  33. 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
  34. 11 Apr, 2003 1 commit
  35. 09 Apr, 2003 1 commit