Commit Graph

79 Commits

Author SHA1 Message Date
Mikel Astiz ce395cd818 gdbus: Fix incorrectly discarded signals
Signals with no arguments were incorrectly filtered out due to the NULL
inequality check.
2012-05-22 20:27:56 +02:00
Lucas De Marchi 4fa967e7e2 gdbus: do not check signature twice
Message signature is already checked in generic_message(), so there's no
need to check again in the callback.
2012-05-20 02:47:57 -07:00
Lucas De Marchi e400426267 gdbus: add Method.NoReply annotation in introspection 2012-05-20 02:47:57 -07:00
Lucas De Marchi e42130a83b gdbus: add Deprecated annotation in introspection 2012-05-20 02:47:57 -07:00
Lucas De Marchi 7f2b69d7b8 gdbus: remove signature and reply from tables 2012-05-20 02:47:57 -07:00
Lucas De Marchi ce3345e21d gdbus: loop over args to check message signature 2012-05-20 02:47:57 -07:00
Lucas De Marchi 568a7d0707 gdbus: use GDBusArgInfo to generate introspection
By using GDBusArgInfo in methods and signals, the introspection
generation is much simpler and we can add each argument name.
2012-05-20 02:47:57 -07:00
Lucas De Marchi 8e815c100b gdbus: add and use helpers for table declarations 2012-05-20 02:47:57 -07:00
Marcel Holtmann addd756348 gdbus: Constify introspection method table 2012-05-17 19:58:02 -07:00
Lucas De Marchi 37805e0197 gdbus: do not call memset for terminating NUL 2012-05-17 19:58:01 -07:00
Lucas De Marchi a77fcca3c6 gdbus: return if method signature is malformed 2012-05-17 19:58:01 -07:00
Syam Sidhardhan 2f232f8b02 gdbus: Fix white space coding style issue
- corrected the space before '{'
2012-04-05 08:07:28 -07:00
Szymon Janc ecd56f7a07 gdbus: Remove unused result variable from g_dbus_pending_success 2011-05-27 09:53:38 -07:00
Daniel Wagner 1ef27ffe86 gdbus: Remove root node 'name' attribute in introspection
generate_introspection_xml generates the root <node> tags with a
'name' attribute. This seems to be a valid attribute but it is not
consistent with the way the D-Bus daemon generates empty nodes.

For example if we register "/foo/bar", D-Bus daemon will generate for
"/foo" a introspection which looks like this:

<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
  <node name="bar"/>
</node>

and generate_introspection_xml generates for "/foo/bar":

<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node name="/foo/bar">
</node>

Just don't add the 'name' attribute to the root node.  The GLib
binding for D-Bus does it the same way.
2011-01-19 17:25:30 +01:00
Daniel Wagner 28ec0e2174 gdbus: invaldate_parent_data: walk the whole path down
Assume there is only one object registerd at "/". If we add a new
object at "/foo/bar" the introspection of "/" has to be updated. A new
node has to be added at "/".

invalidate_parent_data stops invaldating the whole path because the
boolean return value of dbus_connection_get_object_path_data is used
wrong.

If we get a TRUE just go on down in the path, if FALSE is return
dbus_connection_get_object_path_data has run out of memory.
2011-01-19 17:25:30 +01:00
Marcel Holtmann e5120c96e9 gdbus: Update copyright information 2011-01-01 17:32:29 -08:00
Lucas De Marchi 752a2ccec8 gdbus: explicitly compare pointers to NULL
This patch was generated by the following semantic patch
(http://coccinelle.lip6.fr/)

// <smpl>
@fix disable is_null,isnt_null1@
expression *E;
@@

- !E
+ E == NULL
// </smpl>
2010-12-08 16:33:06 +01:00
Marcel Holtmann f02dd45e0b Add support for builtin GDBus security using PolicyKit 2010-09-09 18:26:37 +02:00
Marcel Holtmann e173173a1f Add support for GDBus security action and flags 2010-09-09 18:26:36 +02:00
Marcel Holtmann 679f17303d Use simpler error callbacks for GDBus security hooks 2010-09-09 18:26:36 +02:00
Marcel Holtmann 8ef8135a2a Add support for GDBus security handlers 2010-09-09 18:26:36 +02:00
Johan Hedberg 58b37ddb53 Fix parent path introspection data invalidation for multiple levels
In the case that parent path data needs to be invalidated we shouldn't
stop at the immediate parent if it doesn't have our own handler
registered but should continue upwards in the tree until we reach root
or our own handler.
2010-04-30 00:30:54 +02:00
Johan Hedberg 3f2494a7b0 Fix memory leak in g_dbus_register_interface 2010-04-29 23:46:12 +02:00
Marcel Holtmann ab5dcea4fd Make interface callback tables const 2010-03-07 14:33:09 -08:00
Marcel Holtmann 8e0de054cd Update copyright information of D-Bus helper library 2010-01-01 17:05:57 -08:00
RISKÓ Gergely df7313d301 gdbus: handle introspection generally in generic_message.
Previously it was a specific case, now introspection is just another
interface, which is always implemented.  It is registered/unregistered
when an object path is referenced first/last.
2009-09-24 10:22:19 -07:00
RISKÓ Gergely e72d349483 Add introspection interface to the output of introspection calls
This provides better compatibility with some D-Bus clients, such as qdbus.
2009-09-14 14:08:07 -07:00
Denis Kenzior 50ff91e209 Make the parent path invalidateable 2009-05-11 11:50:45 -07:00
Marcel Holtmann 7851155b80 Add D-Bus helper library for GLib integration 2009-04-26 20:51:36 +02:00