Using unpacked structures in liblttng-ctl's protocol can cause issues
when mixing sessiond and client of different bitness. In this specific
case I doubt it causes a problem, but it could rightfully do on some
architectures.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: Ie17096a55a4b7508c604e184cae877b83df6e451
struct process_attr_tracker_values_comm_header {
uint32_t count;
-};
+} LTTNG_PACKED;
struct process_attr_tracker_value_comm {
/* enum lttng_process_attr_value_type */
/* Includes the '\0' terminator. */
uint32_t name_len;
} value;
-};
+} LTTNG_PACKED;
#define GET_INTEGRAL_COMM_VALUE(value_ptr, as_type) \
((as_type)(std::is_signed<as_type>::value ? (value_ptr)->u._signed : \