chiark / gitweb /
bus: catch up with kernel changes
[elogind.git] / src / libsystemd-bus / kdbus.h
index 441bfab9e7b35d69be153093d9f0c031c53bdec6..305ded720ed677e84371a7f7c52403cee9f202f6 100644 (file)
@@ -63,7 +63,7 @@ struct kdbus_timestamp {
 #define KDBUS_MATCH_SRC_ID_ANY         (~0ULL)
 #define KDBUS_DST_ID_BROADCAST         (~0ULL)
 
-/* Message Data Types */
+/* Message Item Types */
 enum {
        /* Filled in by userspace */
        KDBUS_MSG_NULL,                 /* empty record */
@@ -103,17 +103,19 @@ struct kdbus_vec {
 };
 
 /**
- * struct  kdbus_msg_data - chain of data blocks
+ * struct  kdbus_msg_item - chain of data blocks
  *
  * size: overall data record size
- * type: kdbus_msg_data_type of data
+ * type: kdbus_msg_item type of data
  */
-struct kdbus_msg_data {
+struct kdbus_msg_item {
        __u64 size;
        __u64 type;
        union {
                /* inline data */
                __u8 data[0];
+               __u32 data32[0];
+               __u64 data64[0];
                char str[0];
 
                /* data vector */
@@ -146,8 +148,7 @@ enum {
  * set by userspace:
  * dst_id: destination id
  * flags: KDBUS_MSG_FLAGS_*
- * data_size: overall message size
- * data: data records
+ * items: data records
  *
  * set by kernel:
  * src_id: who sent the message
@@ -163,7 +164,7 @@ struct kdbus_msg {
                __u64 cookie_reply;     /* cookie we reply to */
                __u64 timeout_ns;       /* timespan to wait for reply */
        };
-       struct kdbus_msg_data data[0];
+       struct kdbus_msg_item items[0];
 };
 
 enum {
@@ -329,7 +330,7 @@ enum {
 struct kdbus_cmd_name_info_item {
        __u64 size;
        __u64 type;
-       __u8 data[0];
+       __u8 items[0];
 };
 
 struct kdbus_cmd_name_info {
@@ -354,7 +355,11 @@ enum {
 struct kdbus_cmd_match_item {
        __u64 size;
        __u64 type;
-       __u8 data[0];
+       union {
+               __u64 id;
+               __u8 data[0];
+               char str[0];
+       };
 };
 
 struct kdbus_cmd_match {