X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Fltt-sessiond.c;h=6df78d8e3c40cb88d11301d66be4878aabd77fcf;hp=3590d7e444c685147cf74c3a2ece2e1de2831367;hb=df0da1392bb6c77fff7fc65be518dce7de457ed7;hpb=8028d92056a3f0f8999cb895d0fd21eeca0ce849 diff --git a/ltt-sessiond/ltt-sessiond.c b/ltt-sessiond/ltt-sessiond.c index 3590d7e44..6df78d8e3 100644 --- a/ltt-sessiond/ltt-sessiond.c +++ b/ltt-sessiond/ltt-sessiond.c @@ -217,7 +217,7 @@ static void *thread_manage_clients(void *data) * request of the client. */ ret = lttcomm_recv_unix_sock(sock, &lsm, sizeof(lsm)); - if (ret < 0) { + if (ret <= 0) { continue; } @@ -587,6 +587,20 @@ static int process_client_msg(int sock, struct lttcomm_session_msg *lsm) /* No auxiliary data so only send the llm struct. */ goto end; } + case UST_CREATE_TRACE: + { + int sock; + sock = connect_app(lsm->pid); + + ret = ustctl_create_trace(sock, "auto"); + if (ret < 0) { + ret = LTTCOMM_CREATE_FAIL; + } else { + ret = LTTCOMM_OK; + } + + goto end; + } case UST_LIST_APPS: { /* Stop right now if no apps */ @@ -897,6 +911,7 @@ static void sighandler(int sig) { switch (sig) { case SIGPIPE: + return; case SIGINT: case SIGTERM: cleanup();