X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fsessiond-comm.h;h=b571e5d920540f3c38c99aeef40f4fbb14b2cdfd;hb=18a720cd7bbc2eeea6d075903668e21337b5d916;hp=bbc7ce5a8e403156e1bedc38ba574ffdccc390ea;hpb=00c76ceaeb0074e47167be56c0920284e6a0360e;p=lttng-tools.git diff --git a/src/common/sessiond-comm/sessiond-comm.h b/src/common/sessiond-comm/sessiond-comm.h index bbc7ce5a8..b571e5d92 100644 --- a/src/common/sessiond-comm/sessiond-comm.h +++ b/src/common/sessiond-comm/sessiond-comm.h @@ -60,10 +60,10 @@ enum lttcomm_sessiond_command { LTTNG_CALIBRATE = 1, LTTNG_DISABLE_CHANNEL = 2, LTTNG_DISABLE_EVENT = 3, - LTTNG_DISABLE_ALL_EVENT = 4, + /* 4 */ LTTNG_ENABLE_CHANNEL = 5, LTTNG_ENABLE_EVENT = 6, - LTTNG_ENABLE_ALL_EVENT = 7, + /* 7 */ /* Session daemon command */ LTTNG_CREATE_SESSION = 8, LTTNG_DESTROY_SESSION = 9, @@ -138,6 +138,7 @@ enum lttcomm_return_code { LTTCOMM_CONSUMERD_FATAL, /* Fatal error. */ LTTCOMM_CONSUMERD_RELAYD_FAIL, /* Error on remote relayd */ LTTCOMM_CONSUMERD_CHANNEL_FAIL, /* Channel creation failed. */ + LTTCOMM_CONSUMERD_CHAN_NOT_FOUND, /* Channel not found. */ /* MUST be last element */ LTTCOMM_NR, /* Last element */ @@ -226,14 +227,10 @@ struct lttcomm_session_msg { struct lttng_session session; struct lttng_domain domain; union { - struct { - char channel_name[LTTNG_SYMBOL_NAME_LEN]; - char name[NAME_MAX]; - } LTTNG_PACKED disable; /* Event data */ struct { char channel_name[LTTNG_SYMBOL_NAME_LEN]; - struct lttng_event event; + struct lttng_event event LTTNG_PACKED; /* Length of following filter expression. */ uint32_t expression_len; /* Length of following bytecode for filter. */ @@ -248,14 +245,28 @@ struct lttcomm_session_msg { * - unsigned char filter_bytecode[bytecode_len] */ } LTTNG_PACKED enable; + struct { + char channel_name[LTTNG_SYMBOL_NAME_LEN]; + struct lttng_event event LTTNG_PACKED; + /* Length of following filter expression. */ + uint32_t expression_len; + /* Length of following bytecode for filter. */ + uint32_t bytecode_len; + /* + * After this structure, the following variable-length + * items are transmitted: + * - unsigned char filter_expression[expression_len] + * - unsigned char filter_bytecode[bytecode_len] + */ + } LTTNG_PACKED disable; /* Create channel */ struct { - struct lttng_channel chan; + struct lttng_channel chan LTTNG_PACKED; } LTTNG_PACKED channel; /* Context */ struct { char channel_name[LTTNG_SYMBOL_NAME_LEN]; - struct lttng_event_context ctx; + struct lttng_event_context ctx LTTNG_PACKED; } LTTNG_PACKED context; /* Use by register_consumer */ struct { @@ -272,18 +283,18 @@ struct lttcomm_session_msg { uint32_t size; } LTTNG_PACKED uri; struct { - struct lttng_snapshot_output output; + struct lttng_snapshot_output output LTTNG_PACKED; } LTTNG_PACKED snapshot_output; struct { uint32_t wait; - struct lttng_snapshot_output output; + struct lttng_snapshot_output output LTTNG_PACKED; } LTTNG_PACKED snapshot_record; struct { uint32_t nb_uri; unsigned int timer_interval; /* usec */ } LTTNG_PACKED session_live; struct { - struct lttng_save_session_attr attr; + struct lttng_save_session_attr attr; /* struct already packed */ } LTTNG_PACKED save_session; } u; } LTTNG_PACKED;