char enclosing;
char *signature;
- unsigned index;
+ unsigned index, saved_index;
uint32_t *array_size;
- size_t begin;
+ size_t before, begin;
};
struct bus_header {
struct sd_bus_message {
unsigned n_ref;
+ sd_bus *bus;
+
uint32_t reply_serial;
const char *path;
pid_t pid;
pid_t tid;
usec_t pid_starttime;
- usec_t timestamp;
+ usec_t monotonic;
+ usec_t realtime;
bool sealed:1;
bool dont_send:1;
bool free_body:1;
bool free_kdbus:1;
bool free_fds:1;
+ bool release_kdbus:1;
struct bus_header *header;
void *fields;
struct bus_container root_container, *containers;
unsigned n_containers;
- struct iovec iovec[4];
+ struct iovec iovec[3];
unsigned n_iovec;
char *peeked_signature;
char sender_buffer[3 + DECIMAL_STR_MAX(uint64_t) + 1];
char destination_buffer[3 + DECIMAL_STR_MAX(uint64_t) + 1];
+
+ const char *exe;
+ const char *comm;
+ const char *tid_comm;
+ const char *cgroup;
+
+ const char *cmdline;
+ size_t cmdline_length;
+ char **cmdline_array;
+
+ char *session;
+ char *unit;
+ char *user_unit;
+
+ struct kdbus_audit *audit;
+
+ uint8_t *capability;
+ size_t capability_size;
};
#define BUS_MESSAGE_NEED_BSWAP(m) ((m)->header->endian != SD_BUS_NATIVE_ENDIAN)