X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=liblttngctl%2Fliblttngctl.c;h=1793bc53ad44a23195157427b30950f85bb8e9d6;hb=96243366860d20e371efed0500070cdbc4a01ec7;hp=7d020daad2a9d83ca3a72d6dffd089b3e86189c3;hpb=1657e9bb835a28e66396deac871270fe373d5ff4;p=lttng-tools.git diff --git a/liblttngctl/liblttngctl.c b/liblttngctl/liblttngctl.c index 7d020daad..1793bc53a 100644 --- a/liblttngctl/liblttngctl.c +++ b/liblttngctl/liblttngctl.c @@ -24,7 +24,7 @@ #include #include -#include +#include #include "liblttsessiondcomm.h" #include "lttngerr.h" @@ -111,6 +111,11 @@ static int ask_sessiond(enum lttcomm_command_type lct, void **buf) size_t size; void *data = NULL; + ret = lttng_connect_sessiond(); + if (ret < 0) { + goto end; + } + lsm.cmd_type = lct; /* Send command to session daemon */ @@ -148,7 +153,7 @@ static int ask_sessiond(enum lttcomm_command_type lct, void **buf) ret = size; end: - /* Reset lsm data struct */ + lttng_disconnect_sessiond(); memset(&lsm, 0, sizeof(lsm)); return ret; } @@ -182,6 +187,21 @@ int lttng_ust_start_trace(pid_t pid) return ret; } +/* + * lttng_ust_stop_trace + * + * Request a trace stop for pid. + */ +int lttng_ust_stop_trace(pid_t pid) +{ + int ret; + + lsm.pid = pid; + ret = ask_sessiond(UST_STOP_TRACE, NULL); + + return ret; +} + /* * lttng_ust_create_trace * @@ -355,9 +375,9 @@ int lttng_disconnect_sessiond(void) * * Set the session uuid for current lsm. */ -void lttng_set_current_session_uuid(char *uuid) +void lttng_set_current_session_uuid(uuid_t *uuid) { - uuid_parse(uuid, lsm.session_id); + uuid_copy(lsm.session_id, *uuid); } /*