X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flibsystemd%2Fsd-bus%2Fbus-kernel.c;h=a7d18e337b874244b97cccfc9348ffa10c68f74d;hp=759d566eb31d9fc4d3c8a7fb33bcc3802a9c9310;hb=412c18f10c9df3f0a02358d8c0e707ed2e5fa186;hpb=8f16f51d9323e87cc78d28e9656984c028071f94 diff --git a/src/libsystemd/sd-bus/bus-kernel.c b/src/libsystemd/sd-bus/bus-kernel.c index 759d566eb..a7d18e337 100644 --- a/src/libsystemd/sd-bus/bus-kernel.c +++ b/src/libsystemd/sd-bus/bus-kernel.c @@ -1800,10 +1800,15 @@ int bus_kernel_realize_attach_flags(sd_bus *bus) { int bus_kernel_fix_attach_mask(void) { _cleanup_free_ char *mask = NULL; - uint64_t m = (uint32_t) -1; + uint64_t m = (uint64_t) -1; char buf[2+16+2]; int r; + /* By default we don't want any kdbus metadata fields to be + * suppressed, hence we reset the kernel mask for it to + * (uint64_t) -1. This is overridable via a kernel command + * line option, however. */ + r = get_proc_cmdline_key("systemd.kdbus_attach_flags_mask=", &mask); if (r < 0) { log_warning_errno(-r, "Failed to read kernel command line: %m");