dbus/bus bus.c,1.44,1.45 dispatch.c,1.53,1.54 driver.c,1.43,1.44

Havoc Pennington hp@pdx.freedesktop.org
Mon, 20 Oct 2003 22:46:54 -0700


Update of /cvs/dbus/dbus/bus
In directory pdx:/tmp/cvs-serv23383/bus

Modified Files:
	bus.c dispatch.c driver.c 
Log Message:
2003-10-20  Havoc Pennington  <hp@redhat.com>

        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


Index: bus.c
===================================================================
RCS file: /cvs/dbus/dbus/bus/bus.c,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -d -r1.44 -r1.45
--- bus.c	16 Oct 2003 06:43:32 -0000	1.44
+++ bus.c	21 Oct 2003 05:46:51 -0000	1.45
@@ -919,6 +919,7 @@
   type = dbus_message_get_type (message);
   
   /* dispatch.c was supposed to ensure these invariants */
+  /* FIXME this assertion is failing in make check */
   _dbus_assert (dbus_message_get_destination (message) != NULL ||
                 type == DBUS_MESSAGE_TYPE_SIGNAL);
   _dbus_assert (type == DBUS_MESSAGE_TYPE_SIGNAL ||

Index: dispatch.c
===================================================================
RCS file: /cvs/dbus/dbus/bus/dispatch.c,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -d -r1.53 -r1.54
--- dispatch.c	14 Oct 2003 05:16:56 -0000	1.53
+++ dispatch.c	21 Oct 2003 05:46:51 -0000	1.54
@@ -173,10 +173,8 @@
 #endif /* DBUS_ENABLE_VERBOSE_MODE */
   
   /* If service_name is NULL, if it's a signal we send it to all
-   * connections with a match rule. If it's not a signal, it goes to
-   * the bus daemon but doesn't go "on the bus"; e.g. a peer-to-peer
-   * ping. Handle these immediately, especially disconnection
-   * messages. There are no security policy checks on these.
+   * connections with a match rule. If it's not a signal, there
+   * are some special cases here but mostly we just bail out.
    */
   if (service_name == NULL)
     {

Index: driver.c
===================================================================
RCS file: /cvs/dbus/dbus/bus/driver.c,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- driver.c	14 Oct 2003 22:16:03 -0000	1.43
+++ driver.c	21 Oct 2003 05:46:51 -0000	1.44
@@ -245,7 +245,7 @@
       if (!_dbus_string_append_int (str, next_major_number))
         return FALSE;
 
-      if (!_dbus_string_append (str, "-"))
+      if (!_dbus_string_append (str, "."))
         return FALSE;
       
       if (!_dbus_string_append_int (str, next_minor_number))