diff options
author | Lennart Poettering <lennart@poettering.net> | 2015-01-26 21:48:08 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2015-01-26 21:52:07 +0100 |
commit | b381de4197157748ed96e469fcc372c23f842ae1 (patch) | |
tree | 5f5fa7cc7a4a703c294d92b9501772857a286fdb /src/libsystemd/sd-bus/bus-gvariant.h | |
parent | ee04388a54f0e045377eeaf33c17eb357fe12d69 (diff) |
sd-bus: change serialization of kdbus messages to qualify in their entirety as gvariant objects
Previously, we only minimally altered the dbus1 framing for kdbus, and
while the header and its fields where compliant Gvariant objects, and so
was the body, the entire message together was not.
As result of discussions with Ryan Lortie this is now changed, so that
the messages in there entirely are fully compliant GVariants. This
follows the framing description described here:
https://wiki.gnome.org/Projects/GLib/GDBus/Version2
Note that this change changes the framing of *all* messages sent via
kdbus, this means you have to reboot your kdbus system, after compiling
and installing this new version.
Diffstat (limited to 'src/libsystemd/sd-bus/bus-gvariant.h')
-rw-r--r-- | src/libsystemd/sd-bus/bus-gvariant.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libsystemd/sd-bus/bus-gvariant.h b/src/libsystemd/sd-bus/bus-gvariant.h index b4bd2a50f0..875d34b59b 100644 --- a/src/libsystemd/sd-bus/bus-gvariant.h +++ b/src/libsystemd/sd-bus/bus-gvariant.h @@ -21,6 +21,12 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>. ***/ +#include "macro.h" + int bus_gvariant_get_size(const char *signature) _pure_; int bus_gvariant_get_alignment(const char *signature) _pure_; int bus_gvariant_is_fixed_size(const char *signature) _pure_; + +size_t bus_gvariant_determine_word_size(size_t sz, size_t extra); +void bus_gvariant_write_word_le(void *p, size_t sz, size_t value); +size_t bus_gvariant_read_word_le(void *p, size_t sz); |