[systemd-commits] src/libsystemd

Daniel Mack zonque at kemper.freedesktop.org
Mon Jan 5 04:44:49 PST 2015


 src/libsystemd/sd-bus/bus-kernel.c |    3 ++-
 src/libsystemd/sd-bus/kdbus.h      |    4 +++-
 2 files changed, 5 insertions(+), 2 deletions(-)

New commits:
commit d7d052b23fe1180946b592884d7ea99fd723af4d
Author: Daniel Mack <daniel at zonque.org>
Date:   Mon Jan 5 13:41:30 2015 +0100

    sd-bus: sync kdbus.h
    
    Catch up with latest changes in kdbus.ko:
    
     * Signals can be sent as unicast now, hence they need to be marked as
       such with the KDBUS_MSG_SIGNAL in the message flags.
    
     * Follow ioctl number change for KDBUS_CMD_FREE

diff --git a/src/libsystemd/sd-bus/bus-kernel.c b/src/libsystemd/sd-bus/bus-kernel.c
index 6ee3f92..5b193be 100644
--- a/src/libsystemd/sd-bus/bus-kernel.c
+++ b/src/libsystemd/sd-bus/bus-kernel.c
@@ -296,7 +296,8 @@ static int bus_message_setup_kmsg(sd_bus *b, sd_bus_message *m) {
 
         m->kdbus->flags =
                 ((m->header->flags & BUS_MESSAGE_NO_REPLY_EXPECTED) ? 0 : KDBUS_MSG_EXPECT_REPLY) |
-                ((m->header->flags & BUS_MESSAGE_NO_AUTO_START) ? KDBUS_MSG_NO_AUTO_START : 0);
+                ((m->header->flags & BUS_MESSAGE_NO_AUTO_START) ? KDBUS_MSG_NO_AUTO_START : 0) |
+                ((m->header->type == SD_BUS_MESSAGE_SIGNAL) ? KDBUS_MSG_SIGNAL : 0);
 
         if (well_known)
                 /* verify_destination_id will usually be 0, which makes the kernel driver only look
diff --git a/src/libsystemd/sd-bus/kdbus.h b/src/libsystemd/sd-bus/kdbus.h
index d124f21..5165ba3 100644
--- a/src/libsystemd/sd-bus/kdbus.h
+++ b/src/libsystemd/sd-bus/kdbus.h
@@ -408,10 +408,12 @@ struct kdbus_item_list {
  *				in cookie_reply
  * @KDBUS_MSG_NO_AUTO_START:	Do not start a service, if the addressed
  *				name is not currently active
+ * @KDBUS_MSG_SIGNAL:		Treat this message as signal
  */
 enum kdbus_msg_flags {
 	KDBUS_MSG_EXPECT_REPLY	= 1ULL << 0,
 	KDBUS_MSG_NO_AUTO_START	= 1ULL << 1,
+	KDBUS_MSG_SIGNAL	= 1ULL << 2,
 };
 
 /**
@@ -1022,7 +1024,7 @@ struct kdbus_cmd_match {
 					      struct kdbus_cmd_send)
 #define KDBUS_CMD_RECV			_IOWR(KDBUS_IOCTL_MAGIC, 0x31,	\
 					      struct kdbus_cmd_recv)
-#define KDBUS_CMD_FREE			_IOW(KDBUS_IOCTL_MAGIC, 0x33,	\
+#define KDBUS_CMD_FREE			_IOW(KDBUS_IOCTL_MAGIC, 0x32,	\
 					     struct kdbus_cmd_free)
 
 #define KDBUS_CMD_NAME_ACQUIRE		_IOWR(KDBUS_IOCTL_MAGIC, 0x40,	\



More information about the systemd-commits mailing list