- /* This flag indicates how many packet are in
- * the transmission. Ex: If list apps is requested,
- * and there is 4 pids registered, num_pckt will be 4
- */
- unsigned int num_pckt;
- union {
- /* UST_LIST_APPS */
- struct {
- pid_t pid;
- } list_apps;
- /* LTTNG_LIST_SESSIONS */
- struct {
- char name[NAME_MAX];
- char uuid[37]; /* See libuuid not exported size UUID_STR_LEN */
- } list_sessions;
- } u;
+ unsigned int size_payload;
+};
+
+/*
+ * Data structures for the kconsumerd communications
+ *
+ * The header structure is sent to the kconsumerd daemon to inform
+ * how many lttcomm_kconsumerd_msg it is about to receive
+ */
+struct lttcomm_kconsumerd_header {
+ unsigned int payload_size;
+ enum lttcomm_consumerd_command cmd_type;
+ enum lttcomm_return_code ret_code;
+};
+
+/* lttcomm_kconsumerd_msg represents a file descriptor to consume the
+ * data and a path name to write it
+ */
+struct lttcomm_kconsumerd_msg {
+ char path_name[PATH_MAX];
+ int fd;
+ enum lttcomm_kconsumerd_fd_state state;