Commit graph

33 commits

Author SHA1 Message Date
Havoc Pennington
7e050c8871 2003-03-04 Havoc Pennington <hp@pobox.com>
* 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.
2003-03-05 02:01:34 +00:00
Anders Carlsson
bafed4197e Doh 2003-03-04 23:06:11 +00:00
Anders Carlsson
942a69b1cd 2003-03-05 Anders Carlsson <andersca@codefactory.se>
* dbus/dbus-transport.c: (_dbus_transport_open):
	Remove duplicate "tcp" entry.

	* doc/dbus-specification.sgml:
	Clarify some things.
2003-03-04 23:02:40 +00:00
Anders Carlsson
3781f063a6 2003-02-24 Anders Carlsson <andersca@codefactory.se>
* dbus/dbus-marshal.c: (_dbus_marshal_validate_arg):
	* dbus/dbus-message-builder.c: (_dbus_message_data_load):
	* dbus/dbus-message.c: (dbus_message_append_boolean),
	(dbus_message_append_boolean_array),
	(dbus_message_get_args_valist), (_dbus_message_test):
	* dbus/dbus-message.h:
	* doc/dbus-specification.sgml:
	Various fixes as pointed out by Havoc.

	* test/data/invalid-messages/bad-boolean-array.message:
	* test/data/invalid-messages/bad-boolean.message:
	Add invalid boolean value test cases.
2003-02-24 20:26:13 +00:00
Anders Carlsson
c8769e0b1d 2003-02-24 Anders Carlsson <andersca@codefactory.se>
* dbus/dbus-internals.c: (_dbus_type_to_string):
	* dbus/dbus-marshal.c: (_dbus_marshal_get_arg_end_pos),
	(_dbus_marshal_validate_arg):
	* dbus/dbus-message-builder.c: (_dbus_message_data_load):
	* dbus/dbus-message.c: (dbus_message_append_args_valist),
	(dbus_message_append_boolean), (dbus_message_append_boolean_array),
	(dbus_message_get_args_valist), (dbus_message_iter_get_boolean),
	(dbus_message_iter_get_int32), (dbus_message_iter_get_uint32),
	(dbus_message_iter_get_double),
	(dbus_message_iter_get_boolean_array), (message_iter_test):
	* dbus/dbus-message.h:
	* dbus/dbus-protocol.h:
	* doc/dbus-specification.sgml:
	* test/data/valid-messages/lots-of-arguments.message:
	Add support for boolean and boolean array types.
2003-02-24 19:04:13 +00:00
Havoc Pennington
9e1b2fe28e another FIXME about method call mapping signals and slots 2003-02-18 04:43:35 +00:00
Havoc Pennington
614f82f6a6 add FIXME about how we might want to consider BYTE or BOOL 2003-02-18 04:39:05 +00:00
Havoc Pennington
c62323786c 2003-02-17 Havoc Pennington <hp@pobox.com>
* doc/dbus-specification.sgml: lots of cosmetic
	cleanups/rearrangement, add assorted FIXME, change DBUS_ADDRESS
	env variable to DBUS_BUS_ADDRESS, s/client/application/,
	s/server/bus/ (except in authentication section). Add a section
	"Message Bus Message Routing"
2003-02-18 03:08:04 +00:00
Havoc Pennington
061455a358 typo fixes 2003-02-18 02:05:08 +00:00
Anders Carlsson
94a718b2af 2003-02-17 Anders Carlsson <andersca@codefactory.se.>
Release 0.4

	* NEWS: Update
2003-02-17 11:38:02 +00:00
Anders Carlsson
108fdc542a 2003-02-17 Anders Carlsson <andersca@codefactory.se>
* doc/dbus-specification.sgml:
	Specification updates.
2003-02-17 11:04:18 +00:00
Anders Carlsson
3c8db26789 2003-02-17 Anders Carlsson <andersca@codefactory.se>
* bus/activation.c: (bus_activation_init), (child_setup),
	(bus_activation_activate_service):
	* bus/activation.h:
	* bus/main.c: (main):
	Set DBUS_ADDRESS environment variable.

	* dbus/dbus-errors.c: (dbus_set_error):
	Don't use va_copy since that's a C99 feature.

	* dbus/dbus-sysdeps.c: (_dbus_setenv), (do_exec),
	(_dbus_spawn_async):
	* dbus/dbus-sysdeps.h:
	Add child_setup_func to _dbus_spawn_async.

	* doc/dbus-specification.sgml:
	Update specification.

	* test/spawn-test.c: (setup_func), (main):
	Fix test.
2003-02-17 09:59:23 +00:00
Anders Carlsson
014e1be482 2003-02-17 Anders Carlsson <andersca@codefactory.se>
* doc/.cvsignore:
	* doc/Makefile.am:
	* doc/dbus-test-plan.sgml:
	Add test plan document.

	* test/Makefile.am:
	Fix distcheck.
2003-02-16 23:35:51 +00:00
Havoc Pennington
ece62d7c14 s/desktop session message bus/login session message bus/ 2003-02-15 15:35:14 +00:00
Havoc Pennington
5970d04af5 2003-02-13 Havoc Pennington <hp@pobox.com>
* 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
2003-02-13 04:11:57 +00:00
Zack Rusin
9ac27f95fe Minimal semantic fixes. 2003-02-10 03:14:29 +00:00
Anders Carlsson
c90bd5a7d2 2003-02-02 Anders Carlsson <andersca@codefactory.se>
* doc/dbus-specification.sgml:
	Update address format section.
2003-02-02 17:36:46 +00:00
Havoc Pennington
ca84a29217 2003-01-31 Havoc Pennington <hp@pobox.com>
* doc/dbus-specification.sgml: work on the specification

	* dbus/dbus-message.c (_dbus_message_loader_return_buffer): check
	the protocol version of the message.

	* dbus/dbus-protocol.h: drop special _REPLY names, the spec
	no longer specifies that.
	(DBUS_SERVICE_REPLY_SERVICE_EXISTS): fix flags (1/2/4/8 not
	1/2/3/4)

	* dbus/dbus-marshal.c (_dbus_marshal_get_arg_end_pos): add missing
	"break" for DBUS_TYPE_NIL, remove @todo
2003-02-01 00:08:32 +00:00
Havoc Pennington
482dab2076 2003-01-31 Havoc Pennington <hp@pobox.com>
* doc/dbus-specification.sgml: fully specify the header.  Add
	flags and major protocol version, and change header/body len to
	unsigned.

	* dbus/dbus-message-builder.c (append_saved_length): append length
	as uint32

	* dbus/dbus-message.c (dbus_message_create_header): change header
	length and body length to unsigned. Add the new fields from the
	spec
	(_dbus_message_loader_return_buffer): unsigned header/body len
2003-01-31 03:49:42 +00:00
Havoc Pennington
af4ef42fa5 2003-01-30 Havoc Pennington <hp@pobox.com>
* dbus/dbus-auth.c: rework to use only REJECTED, no
	MECHANISMS

	* doc/dbus-sasl-profile.txt: drop MECHANISMS and just
	use REJECTED, suggested by Mark McLoughlin
2003-01-31 01:31:00 +00:00
Havoc Pennington
c514c719ec 2003-01-24 Havoc Pennington <hp@pobox.com>
* doc/dbus-specification.sgml: add some stuff
2003-01-24 05:16:42 +00:00
Havoc Pennington
f8e9de35d7 .cvsignore 2003-01-23 20:31:01 +00:00
Havoc Pennington
f703c5ddd3 2003-01-22 Havoc Pennington <hp@pobox.com>
* doc/dbus-specification.sgml: Start to document the protocol.
2003-01-23 05:04:03 +00:00
Anders Carlsson
037192972a Add this 2003-01-19 18:27:44 +00:00
Havoc Pennington
01af5ff410 2003-01-04 Havoc Pennington <hp@pobox.com>
* test/watch.c (error_handler): make it safe if the error handler
	is called multiple times (if we s/error handler/disconnect
	handler/ we should just guarantee it's called only once)

	* dbus/dbus-transport.c (_dbus_transport_disconnect): call the
	error handler on disconnect (it's quite possible we should
	just change the error handler to a "disconnect handler," I'm
	not sure we have any other meaningful errors)

	* configure.in: check for getpwnam_r

	* dbus/dbus-transport.c, dbus/dbus-transport-unix.c,
	dbus/dbus-auth.c: add credentials support, add EXTERNAL auth
	mechanism as in SASL spec, using socket credentials

	* dbus/dbus-sysdeps.c (_dbus_read_credentials_unix_socket): new function
	(_dbus_send_credentials_unix_socket): new function

	* dbus/dbus-sysdeps.c (_dbus_accept_unix_socket): rename just
	dbus_accept()
	(_dbus_write): only check errno if <0 returned
	(_dbus_write_two): ditto
2003-01-04 07:28:54 +00:00
Havoc Pennington
ff5283ab92 2002-12-26 Havoc Pennington <hp@pobox.com>
* dbus/dbus-marshal.h (DBUS_COMPILER_BYTE_ORDER): #ifdef
	WORDS_BIGENDIAN then compiler byte order is DBUS_BIG_ENDIAN,
	doh

	* dbus/dbus-marshal.c: Add macros to do int swapping in-place and
	avoid swap_bytes() overhead (ignoring possible assembly stuff for
	now). Main point is because I wanted unpack_uint32 to implement
	_dbus_verbose_bytes
	(_dbus_verbose_bytes): new function

	* dbus/dbus-string.c (_dbus_string_validate_ascii): new function

	* dbus/dbus-message.c (_dbus_message_loader_get_is_corrupted): add
	mechanism to handle a corrupt message stream
	(_dbus_message_loader_new): fix preallocation to only prealloc,
	not prelengthen

	* dbus/dbus-string.c (_dbus_string_skip_blank): fix this function
	(_dbus_string_test): enhance tests for copy/move and fix the
	functions

	* dbus/dbus-transport-unix.c: Hold references in more places to
	avoid reentrancy problems

	* dbus/dbus-transport.c: ditto

	* dbus/dbus-connection.c (dbus_connection_dispatch_message): don't
	leak reference count in no-message case

	* test/watch.c (do_mainloop): handle adding/removing watches
	during iteration over the watches. Also, ref the connection/server
	stored on a watch, so we don't try to mangle a destroyed one.

	* dbus/dbus-transport-unix.c (do_authentication): perform
	authentication

	* dbus/dbus-auth.c (get_state): add a state
	AUTHENTICATED_WITH_UNUSED_BYTES and return it if required
	(_dbus_auth_get_unused_bytes): append the unused bytes
	to the passed in string, rather than prepend

	* dbus/dbus-transport.c (_dbus_transport_init_base): create
	the auth conversation DBusAuth

	* dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd)
	(_dbus_transport_new_for_domain_socket): when creating a
	transport, pass in whether it's a client-side or server-side
	transport so we know which DBusAuth to create
2002-12-27 00:44:41 +00:00
Havoc Pennington
2297787455 2002-12-25 Havoc Pennington <hp@pobox.com>
* doc/dbus-sasl-profile.txt: docs on the authentication protocol,
	it is a simple protocol that just maps directly to SASL.

	* dbus/dbus-auth.h, dbus/dbus-auth.c: authentication protocol
	initial implementation, not actually used yet.

	* dbus/dbus-string.c (_dbus_string_find): new function
	(_dbus_string_equal): new function
	(_dbus_string_base64_encode): new function
	(_dbus_string_base64_decode): new function
2002-12-25 18:00:10 +00:00
Havoc Pennington
041b0767b2 2002-11-24 Havoc Pennington <hp@pobox.com>
* test/echo-client.c, test/echo-server.c: cheesy test
	clients.

	* configure.in (AC_CHECK_FUNCS): check for writev

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

	* dbus/dbus-list.c (_dbus_list_foreach): new function

	* dbus/dbus-internals.c (_dbus_verbose): new function

	* dbus/dbus-server.c, dbus/dbus-server.h: public object
	representing a server that listens for connections.

	* dbus/.cvsignore: create

	* dbus/dbus-errors.h, dbus/dbus-errors.c:
	public API for reporting errors

	* dbus/dbus-connection.h, dbus/dbus-connection.c:
	public object representing a connection that
	sends/receives messages. (Same object used for
	both client and server.)

	* dbus/dbus-transport.h, dbus/dbus-transport.c:
	Basic abstraction for different kinds of stream
	that we might read/write messages from.
2002-11-25 05:13:09 +00:00
Havoc Pennington
5a6adeee6e 2002-11-21 Havoc Pennington <hp@redhat.com>
* dbus/Makefile.am (INCLUDES): define DBUS_COMPILATION
	so we can allow ourselves to include files directly,
	instead of having to use dbus.h

	* dbus/dbus.h: fill in

	* dbus/dbus-message.h: sketch out a sample header file.
	Include griping if you include it directly instead of
	via dbus.h

	* dbus/dbus-macros.h: new file with macros for extern "C",
	TRUE/FALSE, NULL, etc.

	* doc/file-boilerplate.c: put include guards in here
2002-11-21 22:05:55 +00:00
Havoc Pennington
89161753de 2002-11-21 Havoc Pennington <hp@redhat.com>
* doc/file-boilerplate.c: include both AFL and GPL boilerplate.

	* COPYING: include the GPL as well, and license code
	under both AFL and GPL.
2002-11-21 19:54:29 +00:00
Anders Carlsson
6b0e7e822f 2002-11-21 Anders Carlsson <andersca@codefactory.se>
* doc/Makefile.am:
	Fix references so we can distcheck.
2002-11-21 18:54:46 +00:00
Havoc Pennington
f6343e5844 add file-boilerplate.c 2002-11-21 16:43:42 +00:00
Havoc Pennington
93cff3d69f initial import of "dbus" skeleton 2002-11-21 16:41:33 +00:00