X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=liblttsessiondcomm%2Fliblttsessiondcomm.h;h=ce85e8292130e34dcb0c0a0fcc1dac016acc93e8;hp=0e2c4f07f8814b0c290e1366b8861b7a3fd4e71c;hb=ce3d728cd9bfcc0f7d43e08275a92cf04e898662;hpb=686204ab689fc20afc4aaf014f1f4a877b1e581d diff --git a/liblttsessiondcomm/liblttsessiondcomm.h b/liblttsessiondcomm/liblttsessiondcomm.h index 0e2c4f07f..ce85e8292 100644 --- a/liblttsessiondcomm/liblttsessiondcomm.h +++ b/liblttsessiondcomm/liblttsessiondcomm.h @@ -31,11 +31,6 @@ /* Queue size of listen(2) */ #define MAX_LISTEN 10 -/* Maximum amount of PID the list_apps command - * can send back to the lttng client. - */ -#define MAX_APPS_PID 20 - /* Get the error code index from 0 since * LTTCOMM_OK start at 1000 */ @@ -78,6 +73,13 @@ enum lttcomm_return_code { LTTCOMM_SESSION_FAIL, /* Create session fail */ LTTCOMM_START_FAIL, /* Start tracing fail */ LTTCOMM_LIST_FAIL, /* Listing apps fail */ + LTTCOMM_NO_APPS, /* No traceable application */ + LTTCOMM_NO_SESS, /* No sessions available */ + LTTCOMM_NO_TRACE, /* No trace exist */ + LTTCOMM_FATAL, /* Session daemon had a fatal error */ + LTTCOMM_NO_TRACEABLE, /* Error for non traceable app */ + LTTCOMM_SELECT_SESS, /* Must select a session */ + LTTCOMM_EXIST_SESS, /* Session name already exist */ LTTCOMM_NR, /* Last element */ }; @@ -118,7 +120,11 @@ struct lttcomm_session_msg { }; /* - * Data structure for the lttng client response + * Data structure for the lttng client response. + * + * This data structure is the control struct use in + * the header of the transmission. NEVER put variable + * size data in here. */ struct lttcomm_lttng_msg { enum lttcomm_command_type cmd_type; @@ -126,19 +132,14 @@ struct lttcomm_lttng_msg { uuid_t session_id; pid_t pid; char trace_name[NAME_MAX]; - union { - /* UST_LIST_APPS */ - struct { - size_t size; - pid_t pids[MAX_APPS_PID]; - } list_apps; - } u; + unsigned int size_payload; }; extern int lttcomm_create_unix_sock(const char *pathname); extern int lttcomm_connect_unix_sock(const char *pathname); extern int lttcomm_accept_unix_sock(int sock); extern int lttcomm_listen_unix_sock(int sock); +extern int lttcomm_close_unix_sock(int sock); extern ssize_t lttcomm_recv_unix_sock(int sock, void *buf, size_t len); extern ssize_t lttcomm_send_unix_sock(int sock, void *buf, size_t len); extern const char *lttcomm_get_readable_code(enum lttcomm_return_code code);