Commit graph

1974 commits

Author SHA1 Message Date
Havoc Pennington
9a0e83f509 2003-08-30 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-tree.c: write tests and fix the discovered bugs
2003-08-30 17:09:24 +00:00
Havoc Pennington
ce969c6347 2003-08-29 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-tree.c: modify to allow overlapping paths to be
	registered
	(struct DBusObjectSubtree): shrink this
	a lot, since we may have a lot of them
	(_dbus_object_tree_free_all_unlocked): implement
	(_dbus_object_tree_dispatch_and_unlock): implement
2003-08-30 02:56:12 +00:00
Havoc Pennington
85282c340b 2003-08-29 Havoc Pennington <hp@pobox.com>
* dbus/dbus-internals.h: fix _DBUS_N_GLOBAL_LOCKS
2003-08-30 00:26:00 +00:00
Havoc Pennington
8d38a2e2c5 2003-08-28 Havoc Pennington <hp@pobox.com>
purge DBusObjectID

	* dbus/dbus-connection.c: port to no ObjectID, create a
	DBusObjectTree, rename ObjectTree to ObjectPath in public API

	* dbus/dbus-connection.h (struct DBusObjectTreeVTable): delete
	everything except UnregisterFunction and MessageFunction

	* dbus/dbus-marshal.c: port away from DBusObjectID,
	add DBUS_TYPE_OBJECT_PATH

	* dbus/dbus-object-registry.[hc], dbus/dbus-object.[hc],
	dbus/dbus-objectid.[hc]: remove these, we are moving to
	path-based object IDs
2003-08-29 01:05:00 +00:00
Havoc Pennington
24f411a6a1 2003-08-25 Havoc Pennington <hp@pobox.com>
Just noticed that dbus_message_test is hosed, I wonder when I
	broke that. I thought make check was passing earlier...

	* dbus/dbus-object-tree.c: add new "object tree" to match DCOP
	container tree, will replace most of dbus-object-registry

	* dbus/dbus-string.c (_dbus_string_append_printf_valist): fix C99
	screwup
2003-08-25 14:56:53 +00:00
Havoc Pennington
d0c588575e 2003-08-19 Havoc Pennington <hp@pobox.com>
* dbus/dbus-message.c (decode_string_field): support FIELD_SENDER
	(dbus_message_is_error): fix this function

	* bus/dbus-daemon-1.1: clarify logic on when <deny>/<allow> rules
	match

	* bus/policy.c (bus_client_policy_check_can_receive): fix code to
	reflect clarified man page
	(bus_client_policy_check_can_send): ditto

	* bus/session.conf.in: fixup

	* bus/system.conf.in: fixup
2003-08-20 14:48:04 +00:00
Havoc Pennington
68a3c593b9 2003-08-18 Havoc Pennington <hp@redhat.com>
* 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"
2003-08-18 22:43:30 +00:00
Havoc Pennington
95717a938b 2003-08-17 Havoc Pennington <hp@pobox.com>
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
2003-08-18 15:27:33 +00:00
Havoc Pennington
7c3693a53b 2003-08-16 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-registry.c (add_and_remove_objects): remove
	broken assertion

	* glib/dbus-gproxy.c: some hacking
2003-08-16 21:28:47 +00:00
Havoc Pennington
a1b0bd3340 2003-08-15 Havoc Pennington <hp@redhat.com>
* dbus/dbus-pending-call.c (dbus_pending_call_block): implement

	* dbus/dbus-connection.c
	(dbus_connection_send_with_reply_and_block): factor out internals;
	change to convert any error replies to DBusError instead of
	returning them as a message
2003-08-15 23:10:12 +00:00
Havoc Pennington
ef614207fc 2003-08-15 Havoc Pennington <hp@pobox.com>
* dbus/dbus-connection.c,
	dbus/dbus-pending-call.c: Finish the pending call stuff
2003-08-15 04:17:58 +00:00
Havoc Pennington
a6c8a71b1b 2003-08-14 Havoc Pennington <hp@redhat.com>
* dbus/dbus-pending-call.c: start on new object that will replace
	DBusMessageHandler and ReplyHandlerData for tracking outstanding
	replies

	* dbus/dbus-gproxy.c: start on proxy object used to communicate
	with remote interfaces

	* dbus/dbus-gidl.c: do the boring boilerplate in here
2003-08-14 22:49:13 +00:00
Havoc Pennington
9d1c3a0f84 new file, just fooling around 2003-08-13 22:14:47 +00:00
Havoc Pennington
1d1b0f20a4 2003-08-12 Havoc Pennington <hp@pobox.com>
* bus/dispatch.c (bus_dispatch): make this return proper
	DBusHandlerResult to avoid DBUS_ERROR_UNKNOWN_METHOD

	* dbus/dbus-errors.c (dbus_set_error): use
	_dbus_string_append_printf_valist

	* dbus/dbus-string.c (_dbus_string_append_printf_valist)
	(_dbus_string_append_printf): new

	* dbus/dbus-errors.h (DBUS_ERROR_UNKNOWN_MESSAGE): change to
	UNKNOWN_METHOD

	* dbus/dbus-connection.c (dbus_connection_dispatch): handle
	DBUS_HANDLER_RESULT_NEED_MEMORY; send default error reply if a
	message is unhandled.
2003-08-12 04:15:49 +00:00
Havoc Pennington
5c1a8e4490 2003-08-11 Havoc Pennington <hp@pobox.com>
* bus/test.c (client_disconnect_handler): change to return
	HANDLED (would have been REMOVE_MESSAGE)

	* dbus/dbus-object.h (enum DBusHandlerResult): rename to
	HANDLED/NOT_YET_HANDLED instead of
	REMOVE_MESSAGE/ALLOW_MORE_HANDLERS to make it clearer how it
	should be used.
2003-08-12 02:43:50 +00:00
Havoc Pennington
b29ea9115e 2003-08-10 Havoc Pennington <hp@pobox.com>
* tools/dbus-send.c (main): add --type argument, for now
	supporting only method_call and signal types.

	* tools/dbus-print-message.c: print message type

	* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
	init connection->objects

	* doc/dbus-specification.sgml: fix sgml

	* bus/*.c: port over to object-instance API changes

	* test/test-service.c: ditto

	* dbus/dbus-message.c (dbus_message_create_header): allow #NULL
	name, we will have to fix up the rest of the code to also handle
	this
	(dbus_message_new): generic message-creation call
	(set_string_field): allow appending name field
2003-08-11 02:11:58 +00:00
Anders Carlsson
da35c6a4b0 2003-08-09 Anders Carlsson <andersca@codefactory.se>
* doc/TODO:
	* doc/busconfig.dtd:
	Add busconfig DTD.
2003-08-09 15:09:54 +00:00
Anders Carlsson
24f79b9a54 2003-08-09 Anders Carlsson <andersca@codefactory.se>
* doc/dbus-specification.sgml:
	Add activation reply values.
2003-08-09 11:33:48 +00:00
Havoc Pennington
cefb84edc5 2003-08-06 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-registry.c: implement signal connection
	and dispatch

	* dbus/dbus-connection.c (_dbus_connection_unref_unlocked): new

	* dbus/dbus-internals.c (_dbus_memdup): new function
2003-08-07 02:18:54 +00:00
Havoc Pennington
7fe37600bd 2003-08-05 Havoc Pennington <hp@redhat.com>
* configure.in: 0.12
2003-08-05 15:23:38 +00:00
Anders Carlsson
1efd75a5d8 2003-08-05 Anders Carlsson <andersca@codefactory.se>
* glib/dbus-gmain.c: (watch_fd_new), (watch_fd_ref),
	(watch_fd_unref), (dbus_gsource_check), (dbus_gsource_dispatch),
	(add_watch), (remove_watch), (create_source):
	Refcount fds, fixes some reentrancy issues.
2003-08-05 13:57:20 +00:00
Havoc Pennington
ff8908f1e9 2003-08-02 Havoc Pennington <hp@pobox.com>
* dbus/dbus-message.c (dbus_message_get_no_reply)
	(dbus_message_set_no_reply): add these and remove
	set_is_error/get_is_error

	* dbus/dbus-protocol.h, doc/dbus-specification.sgml:
	remove the ERROR flag, since there's now an ERROR type
2003-08-02 14:58:33 +00:00
Havoc Pennington
9c5d01f0fe 2003-08-01 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-registry.c (_dbus_object_registry_handle_and_unlock):
	implement

	* dbus/dbus-message.c (dbus_message_get_type): new function

	* doc/dbus-specification.sgml: add "type" byte to messages
2003-08-02 03:39:35 +00:00
Havoc Pennington
fe195a911d 2003-08-01 Havoc Pennington <hp@pobox.com>
* dbus/dbus-protocol.h (DBUS_MESSAGE_TYPE_*): introduce
	a message type enum to distinguish kinds of message
	(DBUS_HEADER_FLAG_NO_REPLY_EXPECTED): flag for a message
	that need not be replied to

2003-08-01  Havoc Pennington  <hp@pobox.com>

	* dbus/dbus-marshal.c: adapt to DBusObjectID changes
	(unpack_8_octets): fix no-64-bit-int bug

	* dbus/dbus-object-registry.c (validate_id): validate the
	connection ID bits, not just the instance ID.

	* dbus/dbus-connection.c (_dbus_connection_init_id): initialize
	the connection-global 33 bits of the object ID

	* dbus/dbus-object-registry.c (info_from_entry): fill in
	object ID in the new way

	* dbus/dbus-objectid.h: rather than high/low bits, specifically
	define server/client/instance bits.
2003-08-02 01:59:14 +00:00
Havoc Pennington
29b65fa323 2003-07-30 Havoc Pennington <hp@redhat.com>
* dbus/dbus-bus.c (init_connections_unlocked): fix default system
	bus address to be abstract if we have abstract sockets

	* NEWS: update
2003-07-30 20:14:07 +00:00
Havoc Pennington
afb40bc38f 2003-07-28 Havoc Pennington <hp@redhat.com>
* bus/messagebus.in: fix to avoid processname/servicename
	confusion, from Michael Kearey
	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=100965
2003-07-28 14:04:51 +00:00
Havoc Pennington
4402c43e17 2003-07-23 Havoc Pennington <hp@pobox.com>
* dbus/dbus-message.c (dbus_message_iter_get_named):
	fix from Andy Hanton to remove broken "+1"
2003-07-23 15:11:39 +00:00
Havoc Pennington
2ad05d5ce4 2003-07-16 Havoc Pennington <hp@pobox.com>
* tools/dbus-launch.c (babysit): close stdout/stderr in the
	babysitter process, as suggested by Thomas Leonard, so
	an "eval `dbus-launch --exit-with-session`" will actually
	return
2003-07-17 01:53:42 +00:00
Havoc Pennington
1ec6694449 2003-07-16 Havoc Pennington <hp@pobox.com>
* configure.in: print out EXPANDED_* variables in the summary at
	the end; clean up the code that computes EXPANDED_ variables and
	get the ones using exec_prefix right. Should make things work
	when you build without --prefix
2003-07-17 01:32:43 +00:00
Havoc Pennington
8b7fe6f99d 2003-07-13 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object.h (struct DBusObjectVTable): add padding
	fields to DBusObjectVTable and DBusObjectInfo
2003-07-17 01:10:57 +00:00
Havoc Pennington
f1ee877d76 2003-07-12 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object-registry.c: implement unit test,
	fix bugs discovered in process

	* dbus/dbus-connection.c: remove handler_table and
	register_handler(), add DBusObjectRegistry usage

	* dbus/dbus-objectid.c (dbus_object_id_is_null)
	(dbus_object_id_set_null): new functions
2003-07-12 19:32:35 +00:00
Havoc Pennington
824d4a5edf 2003-07-08 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object.c: implement some of this

	* dbus/dbus-object-registry.c
	(_dbus_object_registry_add_and_unlock): fill in the object_id out
	param
	(_dbus_object_registry_new): handle OOM
2003-07-09 03:41:00 +00:00
Havoc Pennington
d8abf955f5 2003-07-08 Havoc Pennington <hp@pobox.com>
* dbus/dbus-object.h: sketch out an API for registering objects
	with a connection, that allows us to use as little as 24 bytes
	per object and lets application code represent an object in
	any conceivable way.

	* dbus/dbus-object-registry.c: implement the hard bits of the
	DBusConnection aspect of object API. Not yet wired up.
2003-07-08 05:07:32 +00:00
Havoc Pennington
3f1ad214b5 2003-07-06 Havoc Pennington <hp@pobox.com>
* dbus/dbus-marshal.c (_dbus_marshal_set_object_id): new function
	(_dbus_marshal_object_id): new
	(_dbus_demarshal_object_id): new
	(_dbus_marshal_get_arg_end_pos): support object ID type, and
	consolidate identical switch cases. Don't conditionalize handling
	of DBUS_TYPE_UINT64, need to handle the type always.
	(_dbus_marshal_validate_arg): consolidate identical cases, and
	handle DBUS_TYPE_OBJECT_ID

	* dbus/dbus-objectid.c: new file with DBusObjectID data type.

	* dbus/dbus-protocol.h: add DBUS_TYPE_OBJECT_ID
2003-07-07 00:47:01 +00:00
Havoc Pennington
a7560f4567 2003-06-29 Havoc Pennington <hp@pobox.com>
* mono/Test.cs (class Test): fire up a main loop and run it

	* mono/DBus.cs (DBus): don't g_thread_init since it can only be
	done once, the app has to do it

2003-06-26  Havoc Pennington  <hp@pobox.com>

	* mono/Connection.cs: set up connection with the glib main loop
2003-07-03 01:48:31 +00:00
Ryan Lortie
320aac6ce6 This commit was manufactured by cvs2svn to create branch
'dbus-object-names'.
2003-07-03 01:48:31 +00:00
Havoc Pennington
23c9bbf77f 2003-07-01 Havoc Pennington <hp@redhat.com>
* doc/dbus-specification.sgml: clarify the format of a type code,
	change suggested by Jim Blandy
2003-07-01 20:21:35 +00:00
Miloslav Trmac
fc2743e206 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* doc/Makefile.am:
	* tools/Makefile.am: Don't assume srcdir == builddir.
2003-06-29 15:35:06 +00:00
Miloslav Trmac
928d7f3cad 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* dbus/dbus-memory.c (dbus_realloc): Don't check guards after shrinking
	the allocated block.
	(_dbus_memory_test): New function.
	* dbus/dbus-test.h: Add _dbus_memory_test ().
	* dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): Call it.
2003-06-28 23:12:11 +00:00
Miloslav Trmac
00da8e46fd 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* dbus/dbus-message.c (decode_header_data): Use %.4s instead
	of %c%c%c%c.
	(dbus_message_new): Remove obsolete @todo.
2003-06-28 23:08:14 +00:00
Miloslav Trmac
a513066ba9 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* dbus/dbus-marshal.c (_dbus_marshal_set_int64)
	(_dbus_marshal_set_uint64): Fix comment.
2003-06-28 23:03:26 +00:00
Miloslav Trmac
f1475d8541 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* dbus/dbus-message.c (append_int_field, append_uint_field): Don't
	hardcode FIELD_REPLY_SERIAL.
2003-06-28 23:00:58 +00:00
Miloslav Trmac
9e15a4f969 2003-06-29 Miloslav Trmac <mitr@volny.cz>
* dbus/dbus-mainloop.c (_dbus_loop_remove_watch)
	(_dbus_loop_remove_timeout): Cast function pointers to (void *) for %p

	* configure.in: Add -D_POSIX_C_SOURCE=199309L -DBSD_SOURCE to CFLAGS
	and disable DBUS_USE_ATOMIC_INT_486 when --enable-ansi is used
2003-06-28 22:56:27 +00:00
Havoc Pennington
6fba6839f5 2003-06-24 Havoc Pennington <hp@pobox.com>
* mono/*.cs: Use IntPtr.Zero instead of ((IntPtr) 0)
2003-06-25 01:05:46 +00:00
Anders Carlsson
f55377a708 2003-06-23 Anders Carlsson <andersca@codefactory.se>
* configure.in:
	* gcj/.cvsignore:
	* gcj/Hello.java:
	* gcj/Makefile.am:
	* gcj/TestMessage.java: (TestMessage), (TestMessage.main):
	* gcj/org/.cvsignore:
	* gcj/org/Makefile.am:
	* gcj/org/freedesktop/.cvsignore:
	* gcj/org/freedesktop/Makefile.am:
	* gcj/org/freedesktop/dbus/.cvsignore:
	* gcj/org/freedesktop/dbus/Makefile.am:
	* gcj/org/freedesktop/dbus/Message.java: (Message),
	(Message.Message):
	* gcj/org/freedesktop/dbus/natMessage.cc:
	Fix the build system.
2003-06-23 17:39:48 +00:00
Havoc Pennington
cef11442f6 2003-06-22 Havoc Pennington <hp@pobox.com>
* mono/Connection.cs: add more bindings

	* dbus/dbus-threads.c (dbus_threads_init): allow calling this
	more than once.
2003-06-23 02:12:19 +00:00
Havoc Pennington
1cc184b4a8 2003-06-22 Havoc Pennington <hp@pobox.com>
* mono/Connection.cs, mono/DBus.cs, mono/Error.cs:
	Start wrapping more stuff.
2003-06-22 22:59:31 +00:00
Havoc Pennington
9588054183 2003-06-22 Havoc Pennington <hp@pobox.com>
* mono/Message.cs: implement Message.Wrap() that ensures we only
	have a single C# wrapper per DBusMessage, assuming it works which
	it probably doesn't.

	* dbus/dbus-message.c (dbus_message_allocate_data_slot): new
	(dbus_message_free_data_slot): new
	(dbus_message_set_data): new
	(dbus_message_get_data): new
2003-06-22 20:46:17 +00:00
Havoc Pennington
6843ad3176 2003-06-22 Havoc Pennington <hp@pobox.com>
* 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
2003-06-22 19:39:47 +00:00
Anders Carlsson
8a71cf33ef 2003-06-22 Anders Carlsson <andersca@codefactory.se>
* configure.in: Add AM_PROG_GCJ and move AM_PROG_LIBTOOL
	after the gcj checks so that the correct configuration tags
	will be added to libtool.
2003-06-22 15:24:16 +00:00