Commit graph

113 commits

Author SHA1 Message Date
Simon McVittie
33a77c8605 micro version 2011-07-29 17:20:55 +01:00
Simon McVittie
affd8a7d16 spec v0.18 and D-Bus 1.5.6 2011-07-29 16:46:38 +01:00
Simon McVittie
7afd5e97ce spec: mention that buses may have a security policy, but leave it implementation-specific
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39450
Reviewed-by: Thiago Macieira <thiago@kde.org>
2011-07-29 16:32:03 +01:00
Simon McVittie
713f31fae5 Move the explanation of message routing to the Message Routing section, leaving behind a summary
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39450
Reviewed-by: Thiago Macieira <thiago@kde.org>
2011-07-29 16:32:03 +01:00
Simon McVittie
755a52a316 Define eavesdropping, and document the eavesdrop match
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39450
Reviewed-by: Thiago Macieira <thiago@kde.org>
2011-07-29 16:31:48 +01:00
Simon McVittie
8de8646311 spec: define unicast messages and broadcast signals, and explicitly allow unicast signals
I believe that the wording of the spec has always allowed unicast signals,
but most bindings assume that signals are broadcasts, so it seems worth
saying specifically that this feature exists and can be useful.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39450
Reviewed-by: Thiago Macieira <thiago@kde.org>
2011-07-29 16:30:48 +01:00
Simon McVittie
80989477dd spec: make the Match Rules section true again
The spec previously claimed that only messages matching the client's
match rules would be received. This is not actually true: messages
listing a client as their DESTINATION are always delivered (security
policy permitting).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39450
Reviewed-by: Thiago Macieira <thiago@kde.org>
2011-07-29 16:29:49 +01:00
Simon McVittie
23cb3ecad3 Upgrade the type system into its own top-level section of the spec
The type system can be used independently, for instance in GVariant
(although GVariant's binary encoding is in fact not the same).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38252
Reviewed-by: Lennart Poettering <lennart@poettering.net>
2011-07-28 12:18:50 +01:00
Simon McVittie
cc24576b5a Finalize D-Bus Spec 0.17, update lists of authors 2011-06-01 12:19:26 +01:00
Simon McVittie
8acb6d685b fix verb-subject agreement in ObjectManager spec 2011-05-25 15:25:45 +01:00
David Zeuthen
d1812812af Add org.freedesktop.DBus.ObjectManager interface
The org.freedesktop.DBus.ObjectManager provides a standardized and
efficient way of keeping one or more tree of objects synchronized
between one server and several clients.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34869
Signed-off-by: David Zeuthen <davidz@redhat.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2011-05-25 15:24:32 +01:00
Simon McVittie
f8ae29fd4e Clarify that 'r' and 'e' cannot appear in signatures
Reviewed-by: Colin Walters <walters@verbum.org>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34529
2011-04-27 18:00:51 +01:00
Simon McVittie
840314724b Reserve 'm', '*', '?', '@', '&' and '^' for their uses in GVariant
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34529
Reviewed-by: Colin Walters <walters@verbum.org>
2011-04-27 18:00:18 +01:00
Simon McVittie
9ddd3ae25c Development version: 1.5.1, dbus-specification 0.17 2011-04-11 19:04:30 +01:00
Simon McVittie
968dbab087 Prepare 1.5.0
- D-Bus Specification 0.16
- libtool 9:0:6
2011-04-11 13:34:28 +01:00
Simon McVittie
c4b76acc6b Merge branch 'dbus-1.4'
Conflicts:
	NEWS
2011-04-08 15:23:17 +01:00
Simon McVittie
aa009ba18b oops, fix XML mis-nesting 2011-04-07 18:27:52 +01:00
Sven Herzberg
136b8b8c86 list which parts of the Desktop Entry spec apply to service files
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19159
2011-04-07 18:26:17 +01:00
Simon McVittie
b92f2224bf Remove support for trailing "." on arg0namespace 2011-04-07 16:12:35 +01:00
Simon McVittie
97bf0b2b48 Rename path_prefix to path_namespace and disallow trailing '/'
Also disallow having both path and path_namespace in the same match rule
(it wouldn't make sense, path is more specific than path_namespace).

As per IRC discussion with davidz and wjt.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34870
2011-04-07 16:12:22 +01:00
Simon McVittie
a9f76f20a0 Document when arg0namespace was added, for completeness 2011-04-07 15:27:01 +01:00
Simon McVittie
4d6c5afbc0 Document when argNpath was added, for completeness 2011-04-07 15:26:49 +01:00
Simon McVittie
976b7a7956 specification: fix versioning
We've added things since 0.15, so this isn't still 0.15.
2011-04-07 15:04:48 +01:00
Simon McVittie
d23cdacb0d path_prefix: anchor matches at path-component boundaries, and give examples
It seems wrong that path_prefix="/foo" matches /foobar, and it isn't
difficult or expensive to check.
2011-04-07 15:04:48 +01:00
David Zeuthen
0980e63aac Add path_prefix match rule
Add a new path_prefix match rule that can be used for efficient
implementations of the org.freedesktop.DBus.ObjectManager interface
(see bug 34869).

https://bugs.freedesktop.org/show_bug.cgi?id=34870

Signed-off-by: David Zeuthen <davidz@redhat.com>
2011-04-07 14:06:05 +01:00
Simon McVittie
36cc4c547c re-word description of arg0namespace
It's unclear at first reading whether "may contain only one element"
means "elements >= 1, as an exception to the usual rule that
elements >= 2" (which is what was intended), or "elements == 1".

"Like a bus name or interface name" is a little ambiguous because they
have different syntactic restrictions: specifically allow any valid bus
name, which also allows all interface names.
2011-04-07 13:12:02 +01:00
Simon McVittie
bf3a7d8653 Merge remote-tracking branch 'wjt/arg0namespace' into arg0namespace-24317 2011-04-07 12:40:30 +01:00
Havoc Pennington
7d65a3a6ed CVE 2010-4352: Reject deeply nested variants
Add DBUS_INVALID_NESTED_TOO_DEEPLY validity problem and a test that
should generate it.

Previously, we rejected deep nesting in the signature, but
variants allow dynamic message nesting, conditional only
on the depth of the message body.

The nesting limit is 64, which was also the limit in static
signatures.  Empirically, dynamic nesting depth observed on my
Fedora 14 system doesn't exceed 2; 64 is really a huge limit.

https://bugs.freedesktop.org/show_bug.cgi?id=32321

Signed-Off-By: Colin Walters <walters@verbum.org>
Signed-off-by: Will Thompson <will.thompson@collabora.co.uk>
2010-12-20 21:39:00 +00:00
Will Thompson
ff393c562d Fix malformed specification XML.
bf532d6 and 28a2d08 each introduced errors in the specification XML that
left it malformed and unbuildable.
2010-12-13 15:35:34 +00:00
Ralf Habacker
bf532d6556 Add documentation for autolaunch meta transport on Windows.
Reviewed-by: Romain Pokrzywka
2010-12-13 15:06:33 +01:00
Mike McQuaid
28a2d08815 Add launchd section to specification. 2010-12-13 12:35:55 +01:00
Will Thompson
610549a679 Define arg0namespace in the specification 2010-11-23 10:58:06 +00:00
Will Thompson
2f618faa2d Explicitly specify which types argX and argXpath match 2010-11-23 10:53:25 +00:00
Will Thompson
b4ae31b982 Document the rationale for argXpath matching. 2010-11-21 17:02:30 +00:00
Ralf Habacker
b3fa6eff0d Added revision history. 2010-11-03 15:15:24 +01:00
Thiago Macieira
b17a5f852c Documentated autolaunch implementation for X Windowing system. 2010-11-03 15:10:44 +01:00
Ralf Habacker
a96fcb19d1 Revert "Added documentation for autolaunch transport."
This reverts commit 2e61875728.
2010-10-08 14:56:57 +02:00
Ralf Habacker
2e61875728 Added documentation for autolaunch transport. 2010-09-27 21:56:40 +02:00
Will Thompson
81839c9389 Explicitly require the daemon to respect destination='' 2010-09-08 12:11:50 +01:00
Will Thompson
1861c9fdd0 Clarify GetConnectionUnixUser documentation.
(This makes it match the freshly-documented GetConnectionUnixProcessID.)
2010-06-17 15:27:08 +01:00
Will Thompson
c8aa4ba183 Document ListQueuedOwners in the spec 2010-06-17 15:27:08 +01:00
Will Thompson
318c55c9c0 Document GetConnectionUnixProcessID in the spec 2010-06-17 15:27:07 +01:00
Will Thompson
1b6adc407e Fix a broken <xref/> 2010-06-17 15:27:07 +01:00
David Zeuthen
f8729bc864 Add an extra parameter to the PropertiesChanged() signal
It was pointed out on the mailing list that it would be useful to know
that a given property has changed without conveying its value. Because
without this parameter a true_no_value property could change, however
there is no way for a client-side proxy to know _what_ property it was
(only that some property changed).

With the parameter, however, a client-side proxy can reliably discard
a cached property value.

Also rename the "true_no_value" to "invalidates" as the spec is now
using this language.

Also allow using the annotation in the enclosed interface name.

Also rename the annotation name so it uses Property in its name
instead of Properties. This is to be more consistent with the existing
org.freedesktop.DBus.Method.NoReply annotation which uses Method, not
Methods.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-05-13 10:58:32 -04:00
David Zeuthen
2541e86615 Add an optional PropertiesChanged() signal
Some notes about this new signal

 - The PropertiesChanged() signal is optional. An application can
   convey support for this signal by either including or excluding it
   from the returned introspection data much like apps not supporting
   (or predating) the GetAll() method does not include GetAll() in the
   introspection data.

 - An object can use PropertiesChanged() but opt out of using it for
   one or more properties by using the

     org.freedesktop.DBus.Properties.EmitsChangedSignal

   annotation on the properties in question

 - Applications can start using this new signal without breaking
   compatibility with clients relying on existing D-Bus API.

The intent of the patch is simply to standardize existing behavior

 - EggDBus has a very similar signal called EggDBusPropertiesChanged()
   (also on the org.freedesktop.DBus.Properties interface)

 - NetworkManager has a PropertiesChanged() signal on each different
   interface (e.g. not org.fd.D.P) that it implements

 - GDBus, an implementation of the D-Bus protocol in GLib, already
   implements this signal

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-05-12 12:28:19 -04:00
Ray Strode
d5a6e590b8 Add clarification to spec about UpdateActivationEnvironment
UpdateActivationEnvironment takes a a{ss}.  This means only
valid UTF-8 can be used.  Environment variables are normally
ascii, but in theory have no specific encoding to them.  This
means that certain valid environment variables can't be sent
to the bus for updating its activation environment.

This commit just adds a note to the spec explaining this
restriction.
2010-05-10 10:16:15 -04:00
Colin Walters
ebfa7c02fd Merge branch 'dbus-1.2'
Conflicts:
	bus/bus.c
	configure.in
2010-03-16 16:11:14 -04:00
Simon McVittie
efc63e58da [doc/dbus-specification.xml] Explicitly specify lower-case hex must be used
https://bugs.freedesktop.org/show_bug.cgi?id=9486

When describing DBUS_COOKIE_SHA1, specify that lower-case hex encoding
must be used.
2010-03-16 12:40:08 -04:00
Will Thompson
ce87333cac Forbid zero serial numbers 2010-01-28 17:01:23 -05:00
Ralf Habacker
622e66944c added tranport address format to dbus specification 2009-12-23 23:28:48 +01:00