dbus/doc TODO,1.29,1.30 dbus-specification.xml,1.1,1.2

Havoc Pennington hp@pdx.freedesktop.org
Tue, 14 Oct 2003 15:16:05 -0700


Update of /cvs/dbus/dbus/doc
In directory pdx:/tmp/cvs-serv13099/doc

Modified Files:
	TODO dbus-specification.xml 
Log Message:
2003-10-14  Havoc Pennington  <hp@redhat.com>

	* 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



Index: TODO
===================================================================
RCS file: /cvs/dbus/dbus/doc/TODO,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- TODO	14 Oct 2003 05:22:22 -0000	1.29
+++ TODO	14 Oct 2003 22:16:03 -0000	1.30
@@ -117,11 +117,3 @@
    we need to have a test for it in the test suite.
 
  - the max_replies_per_connection resource limit isn't implemented
-
- - the pending reply tracking isn't quite right. It currently simply 
-   blocks any reply if one wasn't pending. Instead, it needs to 
-   allow any reply if one was pending, and block otherwise. 
-   Suggest changing the check_reply() call to just get a boolean 
-   was_pending_reply value, pass that in to the policy 
-   engine, and allow <allow>/<deny> elements to match based on 
-   whether it was a pending reply.

Index: dbus-specification.xml
===================================================================
RCS file: /cvs/dbus/dbus/doc/dbus-specification.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- dbus-specification.xml	30 Sep 2003 03:34:00 -0000	1.1
+++ dbus-specification.xml	14 Oct 2003 22:16:03 -0000	1.2
@@ -645,6 +645,11 @@
           was successfully processed.
         </para>
         <para>
+          The METHOD_RETURN or ERROR reply message MUST have the REPLY_SERIAL 
+          header field. If this field is missing, it should be treated as 
+          a corrupt message.
+        </para>
+        <para>
           If a METHOD_CALL message has the flag NO_REPLY_EXPECTED, 
           then as an optimization the application receiving the method 
           call may choose to omit the reply message (regardless of