diff options
author | Daniel Mack <daniel@zonque.org> | 2014-10-14 20:03:06 +0200 |
---|---|---|
committer | Daniel Mack <daniel@zonque.org> | 2014-10-14 20:03:06 +0200 |
commit | 1a2409e262da65a4b0ca8ab18fcf5eabd2d404ca (patch) | |
tree | e6a5956a59bfc75166badb407b3f1bb5771bfe92 | |
parent | b0f84d4d7832659f2216bda7a7cdf51f5e79c6eb (diff) |
sd-bus: sync kdbus.h (ABI break)
kdbus learned KDBUS_HELLO_ACCEPT_MEMFD as new connection negotiation
flag. Set it by default in systemd for now.
-rw-r--r-- | src/libsystemd/sd-bus/bus-kernel.c | 1 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/kdbus.h | 9 | ||||
-rw-r--r-- | src/libsystemd/sd-bus/sd-bus.c | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/libsystemd/sd-bus/bus-kernel.c b/src/libsystemd/sd-bus/bus-kernel.c index c3dbc837d7..27899c1989 100644 --- a/src/libsystemd/sd-bus/bus-kernel.c +++ b/src/libsystemd/sd-bus/bus-kernel.c @@ -1566,6 +1566,7 @@ int bus_kernel_make_starter( hello->size = size; hello->conn_flags = + KDBUS_HELLO_ACCEPT_MEMFD | (activating ? KDBUS_HELLO_ACTIVATOR : KDBUS_HELLO_POLICY_HOLDER) | (accept_fd ? KDBUS_HELLO_ACCEPT_FD : 0); hello->pool_size = KDBUS_POOL_SIZE; diff --git a/src/libsystemd/sd-bus/kdbus.h b/src/libsystemd/sd-bus/kdbus.h index 79a17f3449..1ea4329ea2 100644 --- a/src/libsystemd/sd-bus/kdbus.h +++ b/src/libsystemd/sd-bus/kdbus.h @@ -500,6 +500,8 @@ enum kdbus_policy_type { * enum kdbus_hello_flags - flags for struct kdbus_cmd_hello * @KDBUS_HELLO_ACCEPT_FD: The connection allows the reception of * any passed file descriptors + * @KDBUS_HELLO_ACCEPT_MEMFD: The connection allows the reception of + * any passed memfd file descriptors * @KDBUS_HELLO_ACTIVATOR: Special-purpose connection which registers * a well-know name for a process to be started * when traffic arrives @@ -514,9 +516,10 @@ enum kdbus_policy_type { */ enum kdbus_hello_flags { KDBUS_HELLO_ACCEPT_FD = 1ULL << 0, - KDBUS_HELLO_ACTIVATOR = 1ULL << 1, - KDBUS_HELLO_POLICY_HOLDER = 1ULL << 2, - KDBUS_HELLO_MONITOR = 1ULL << 3, + KDBUS_HELLO_ACCEPT_MEMFD = 1ULL << 1, + KDBUS_HELLO_ACTIVATOR = 1ULL << 2, + KDBUS_HELLO_POLICY_HOLDER = 1ULL << 3, + KDBUS_HELLO_MONITOR = 1ULL << 4, }; /** diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c index 549f9e0943..e34a6bbd87 100644 --- a/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c @@ -171,7 +171,7 @@ _public_ int sd_bus_new(sd_bus **ret) { r->input_fd = r->output_fd = -1; r->message_version = 1; r->creds_mask |= SD_BUS_CREDS_WELL_KNOWN_NAMES|SD_BUS_CREDS_UNIQUE_NAME; - r->hello_flags |= KDBUS_HELLO_ACCEPT_FD; + r->hello_flags |= KDBUS_HELLO_ACCEPT_FD | KDBUS_HELLO_ACCEPT_MEMFD; r->attach_flags |= KDBUS_ATTACH_NAMES; r->original_pid = getpid(); |