X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fsessiond-comm.h;h=736d97809de8f25220647a83dfc1c3032e0ac89b;hb=d36f818641aba7c437cde1f9f6a8983af39cfa21;hp=e984cb1a976e5cbed52561f115fb4bc0c7ff60bb;hpb=1950109e7a08d8064ef5b1f446524274b4fa72d5;p=lttng-tools.git diff --git a/src/common/sessiond-comm/sessiond-comm.h b/src/common/sessiond-comm/sessiond-comm.h index e984cb1a9..736d97809 100644 --- a/src/common/sessiond-comm/sessiond-comm.h +++ b/src/common/sessiond-comm/sessiond-comm.h @@ -87,6 +87,7 @@ enum lttcomm_sessiond_command { LTTNG_SNAPSHOT_DEL_OUTPUT = 26, LTTNG_SNAPSHOT_LIST_OUTPUT = 27, LTTNG_SNAPSHOT_RECORD = 28, + LTTNG_CREATE_SESSION_SNAPSHOT = 29, }; enum lttcomm_relayd_command { @@ -107,6 +108,7 @@ enum lttcomm_relayd_command { * lttcomm error code. */ enum lttcomm_return_code { + LTTCOMM_CONSUMERD_SUCCESS = 0, /* Everything went fine. */ LTTCOMM_CONSUMERD_COMMAND_SOCK_READY = 1, /* Command socket ready */ LTTCOMM_CONSUMERD_SUCCESS_RECV_FD, /* Success on receiving fds */ LTTCOMM_CONSUMERD_ERROR_RECV_FD, /* Error on receiving fds */ @@ -124,6 +126,8 @@ enum lttcomm_return_code { LTTCOMM_CONSUMERD_ENOMEM, /* Consumer is out of memory */ LTTCOMM_CONSUMERD_ERROR_METADATA, /* Error with metadata. */ LTTCOMM_CONSUMERD_FATAL, /* Fatal error. */ + LTTCOMM_CONSUMERD_RELAYD_FAIL, /* Error on remote relayd */ + LTTCOMM_CONSUMERD_CHANNEL_FAIL, /* Channel creation failed. */ /* MUST be last element */ LTTCOMM_NR, /* Last element */ @@ -366,6 +370,13 @@ struct lttcomm_consumer_msg { uint64_t session_id_per_pid; /* Per-pid session ID. */ /* Tells the consumer if the stream should be or not monitored. */ uint32_t monitor; + /* + * For UST per UID buffers, this is the application UID of the + * channel. This can be different from the user UID requesting the + * channel creation and used for the rights on the stream file + * because the application can be in the tracing for instance. + */ + uint32_t ust_app_uid; } LTTNG_PACKED ask_channel; struct { uint64_t key; @@ -394,7 +405,7 @@ struct lttcomm_consumer_msg { uint32_t metadata; /* This a metadata snapshot. */ uint64_t relayd_id; /* Relayd id if apply. */ uint64_t key; - uint64_t max_size; + uint64_t max_stream_size; } LTTNG_PACKED snapshot_channel; } u; } LTTNG_PACKED; @@ -403,11 +414,11 @@ struct lttcomm_consumer_msg { * Status message returned to the sessiond after a received command. */ struct lttcomm_consumer_status_msg { - enum lttng_error_code ret_code; + enum lttcomm_return_code ret_code; } LTTNG_PACKED; struct lttcomm_consumer_status_channel { - enum lttng_error_code ret_code; + enum lttcomm_return_code ret_code; uint64_t key; unsigned int stream_count; } LTTNG_PACKED; @@ -472,4 +483,11 @@ extern void lttcomm_copy_sock(struct lttcomm_sock *dst, extern struct lttcomm_relayd_sock *lttcomm_alloc_relayd_sock( struct lttng_uri *uri, uint32_t major, uint32_t minor); +extern int lttcomm_setsockopt_rcv_timeout(int sock, unsigned int msec); +extern int lttcomm_setsockopt_snd_timeout(int sock, unsigned int msec); + +extern void lttcomm_init(void); +/* Get network timeout, in milliseconds */ +extern unsigned long lttcomm_get_network_timeout(void); + #endif /* _LTTNG_SESSIOND_COMM_H */