m->sensitive = true;
return 0;
}
+
+char** bus_message_make_log_fields(sd_bus_message *m) {
+ _cleanup_strv_free_ char **strv = NULL;
+
+ assert(m);
+
+ (void) strv_extend_assignment(&strv, "DBUS_MESSAGE_TYPE", bus_message_type_to_string(m->header->type));
+ (void) strv_extend_assignment(&strv, "DBUS_SENDER", sd_bus_message_get_sender(m));
+ (void) strv_extend_assignment(&strv, "DBUS_DESTINATION", sd_bus_message_get_destination(m));
+ (void) strv_extend_assignment(&strv, "DBUS_PATH", sd_bus_message_get_path(m));
+ (void) strv_extend_assignment(&strv, "DBUS_INTERFACE", sd_bus_message_get_interface(m));
+ (void) strv_extend_assignment(&strv, "DBUS_MEMBER", sd_bus_message_get_member(m));
+
+ (void) strv_extendf(&strv, "DBUS_MESSAGE_COOKIE=%" PRIu64, BUS_MESSAGE_COOKIE(m));
+ if (m->reply_cookie != 0)
+ (void) strv_extendf(&strv, "DBUS_MESSAGE_REPLY_COOKIE=%" PRIu64, m->reply_cookie);
+
+ (void) strv_extend_assignment(&strv, "DBUS_SIGNATURE", m->root_container.signature);
+ (void) strv_extend_assignment(&strv, "DBUS_ERROR_NAME", m->error.name);
+ (void) strv_extend_assignment(&strv, "DBUS_ERROR_MESSAGE", m->error.message);
+
+ return TAKE_PTR(strv);
+}
}
static int process_message(sd_bus *bus, sd_bus_message *m) {
+ _unused_ _cleanup_(log_context_freep) LogContext *c = NULL;
int r;
assert(bus);
bus->current_message = m;
bus->iteration_counter++;
+ if (log_context_enabled())
+ c = log_context_new_consume(bus_message_make_log_fields(m));
+
log_debug_bus_message(m);
r = process_hello(bus, m);