From 11b491316fb83b0def0ec53b69e2d53ec2722403 Mon Sep 17 00:00:00 2001 From: "John (J5) Palmieri" Date: Tue, 11 May 2004 18:31:34 +0000 Subject: * updated the invalid test cases to include the missing PATH header field which is required * updated the spec documentation to indicate that INTERFACE, MEMBER, and PATH are all required fields --- ChangeLog | 11 +++++++++++ doc/dbus-specification.xml | 14 ++++++++++++-- test/data/invalid-messages/array-of-nil.message | 3 +++ test/data/invalid-messages/array-with-mixed-types.message | 3 +++ test/data/invalid-messages/bad-boolean-array.message | 3 +++ test/data/invalid-messages/bad-boolean.message | 3 +++ test/data/invalid-messages/bad-endian.message | 3 +++ .../invalid-messages/bad-header-field-alignment.message | 4 ++++ test/data/invalid-messages/local-namespace.message | 3 +++ test/data/invalid-messages/no-dot-in-name.message | 3 +++ test/data/invalid-messages/not-nul-header-padding.message | 3 +++ test/data/invalid-messages/overlong-name.message | 4 ++++ .../invalid-messages/too-little-header-padding.message | 3 +++ .../too-much-header-padding-by-far.message | 3 +++ test/data/invalid-messages/too-much-header-padding.message | 3 +++ test/data/invalid-messages/too-short-dict.message | 3 +++ 16 files changed, 67 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index c15388a3..07095fe3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2004-05-11 John (J5) Palmieri : + + * doc/dbus-specification.xml: Added a "Required" column to the + header fields table and changed the "zero or more" verbage in + the above paragraph to read "The header must contain the required + named header fields and zero or more of the optional named header + fields". + * test/data/invalid-messages/*.message: Added the required PATH + named header field to the tests so that they don't fail on + 'Missing path field' + 2004-05-07 John (J5) Palmieri * python/dbus-bindings.pyx.in: Stopped the bindings from trashing diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml index 412d8ea0..7a09a5cf 100644 --- a/doc/dbus-specification.xml +++ b/doc/dbus-specification.xml @@ -266,7 +266,8 @@ In addition to the required header information mentioned in , - the header may contain zero or more named + the header must contain the required named header + fields and zero or more of the optional named header fields. Future versions of this protocol specification may add new fields. Implementations must ignore fields they do not understand. Implementations @@ -287,12 +288,13 @@ Here are the currently-defined named header fields: - + Conventional Name Decimal Value Type + Required Description @@ -301,12 +303,14 @@ INVALID 0 INVALID + no Not a valid field name (error if it appears in a message) PATH 1 OBJECT_PATH + yes The object to send the message to; objects are identified by a path, "/foo/bar" @@ -314,6 +318,7 @@ INTERFACE 2 STRING + yes The interface to invoke a method call on, or that a signal is emitted from. e.g. "org.freedesktop.Introspectable" @@ -321,6 +326,7 @@ MEMBER 3 STRING + yes The member, either the method name or signal name. e.g. "Frobate" @@ -328,12 +334,14 @@ ERROR_NAME 4 STRING + no The name of the error that occurred, for errors REPLY_SERIAL 5 UINT32 + no The serial number of the message this message is a reply to. (The serial number is one of the mandatory header fields, see .) @@ -342,6 +350,7 @@ DESTINATION 6 STRING + no The name of the service this message should be routed to. Only used in combination with the message bus, see . @@ -350,6 +359,7 @@ SENDER 7 STRING + no Sender service. The name of the base service that sent this message. The message bus fills in this field; the field is only meaningful in combination with the message bus. diff --git a/test/data/invalid-messages/array-of-nil.message b/test/data/invalid-messages/array-of-nil.message index 7f0ac718..1197a136 100644 --- a/test/data/invalid-messages/array-of-nil.message +++ b/test/data/invalid-messages/array-of-nil.message @@ -8,6 +8,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/array-with-mixed-types.message b/test/data/invalid-messages/array-with-mixed-types.message index 4455c898..dea2d1e5 100644 --- a/test/data/invalid-messages/array-with-mixed-types.message +++ b/test/data/invalid-messages/array-with-mixed-types.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/bad-boolean-array.message b/test/data/invalid-messages/bad-boolean-array.message index 91ad5ef1..48000afd 100644 --- a/test/data/invalid-messages/bad-boolean-array.message +++ b/test/data/invalid-messages/bad-boolean-array.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/bad-boolean.message b/test/data/invalid-messages/bad-boolean.message index cd588ad8..09026db8 100644 --- a/test/data/invalid-messages/bad-boolean.message +++ b/test/data/invalid-messages/bad-boolean.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/bad-endian.message b/test/data/invalid-messages/bad-endian.message index 8d609244..e979baae 100644 --- a/test/data/invalid-messages/bad-endian.message +++ b/test/data/invalid-messages/bad-endian.message @@ -14,6 +14,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/bad-header-field-alignment.message b/test/data/invalid-messages/bad-header-field-alignment.message index 75776a37..22c0d7ee 100644 --- a/test/data/invalid-messages/bad-header-field-alignment.message +++ b/test/data/invalid-messages/bad-header-field-alignment.message @@ -11,6 +11,10 @@ HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' + HEADER_FIELD UNKNOWN TYPE STRING STRING 'a' diff --git a/test/data/invalid-messages/local-namespace.message b/test/data/invalid-messages/local-namespace.message index dad98a77..f42b5c6a 100644 --- a/test/data/invalid-messages/local-namespace.message +++ b/test/data/invalid-messages/local-namespace.message @@ -10,6 +10,9 @@ STRING 'org.freedesktop.Local' HEADER_FIELD MEMBER TYPE STRING STRING 'Disconnected' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/no-dot-in-name.message b/test/data/invalid-messages/no-dot-in-name.message index 131be05d..6d6317a5 100644 --- a/test/data/invalid-messages/no-dot-in-name.message +++ b/test/data/invalid-messages/no-dot-in-name.message @@ -9,6 +9,9 @@ STRING 'NoDotInHere' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 END_LENGTH Header diff --git a/test/data/invalid-messages/not-nul-header-padding.message b/test/data/invalid-messages/not-nul-header-padding.message index a12c0fa7..be846da0 100644 --- a/test/data/invalid-messages/not-nul-header-padding.message +++ b/test/data/invalid-messages/not-nul-header-padding.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' HEADER_FIELD UNKNOWN TYPE STRING diff --git a/test/data/invalid-messages/overlong-name.message b/test/data/invalid-messages/overlong-name.message index 4fd7025e..c1f90790 100644 --- a/test/data/invalid-messages/overlong-name.message +++ b/test/data/invalid-messages/overlong-name.message @@ -10,6 +10,10 @@ HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' + ALIGN 8 END_LENGTH Header START_LENGTH Body diff --git a/test/data/invalid-messages/too-little-header-padding.message b/test/data/invalid-messages/too-little-header-padding.message index 894e4c3e..358815a5 100644 --- a/test/data/invalid-messages/too-little-header-padding.message +++ b/test/data/invalid-messages/too-little-header-padding.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' HEADER_FIELD UNKNOWN TYPE STRING diff --git a/test/data/invalid-messages/too-much-header-padding-by-far.message b/test/data/invalid-messages/too-much-header-padding-by-far.message index b74f559b..2d2be3a5 100644 --- a/test/data/invalid-messages/too-much-header-padding-by-far.message +++ b/test/data/invalid-messages/too-much-header-padding-by-far.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' HEADER_FIELD UNKNOWN TYPE STRING diff --git a/test/data/invalid-messages/too-much-header-padding.message b/test/data/invalid-messages/too-much-header-padding.message index 01111b63..0b1c294c 100644 --- a/test/data/invalid-messages/too-much-header-padding.message +++ b/test/data/invalid-messages/too-much-header-padding.message @@ -9,6 +9,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' HEADER_FIELD UNKNOWN TYPE STRING diff --git a/test/data/invalid-messages/too-short-dict.message b/test/data/invalid-messages/too-short-dict.message index fde88850..ffc3cc52 100644 --- a/test/data/invalid-messages/too-short-dict.message +++ b/test/data/invalid-messages/too-short-dict.message @@ -8,6 +8,9 @@ STRING 'org.freedesktop.Foo' HEADER_FIELD MEMBER TYPE STRING STRING 'Bar' +HEADER_FIELD PATH +TYPE OBJECT_PATH +OBJECT_PATH '/foo' ALIGN 8 -- cgit