X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng%2Fcommands%2Fset_session.cpp;h=621c8af36c18d1432bec60039f2f02739e624b95;hb=28ab034a2c3582d07d3423d2d746731f87d3969f;hp=ed1b1640f21d7ce008dabb8894d980415c0d7030;hpb=21cf9b6b1843774306a76f4dccddddd706b64f79;p=lttng-tools.git diff --git a/src/bin/lttng/commands/set_session.cpp b/src/bin/lttng/commands/set_session.cpp index ed1b1640f..621c8af36 100644 --- a/src/bin/lttng/commands/set_session.cpp +++ b/src/bin/lttng/commands/set_session.cpp @@ -6,6 +6,10 @@ */ #define _LGPL_SOURCE +#include "../command.hpp" + +#include + #include #include #include @@ -14,16 +18,10 @@ #include #include -#include - -#include "../command.h" - -static char *opt_session_name; - #ifdef LTTNG_EMBED_HELP static const char help_msg[] = #include -; + ; #endif enum { @@ -35,15 +33,15 @@ static struct mi_writer *writer; static struct poptOption long_options[] = { /* longName, shortName, argInfo, argPtr, value, descrip, argDesc */ - {"help", 'h', POPT_ARG_NONE, 0, OPT_HELP, 0, 0}, - {"list-options", 0, POPT_ARG_NONE, NULL, OPT_LIST_OPTIONS, NULL, NULL}, - {0, 0, 0, 0, 0, 0, 0} + { "help", 'h', POPT_ARG_NONE, 0, OPT_HELP, 0, 0 }, + { "list-options", 0, POPT_ARG_NONE, NULL, OPT_LIST_OPTIONS, NULL, NULL }, + { 0, 0, 0, 0, 0, 0, 0 } }; /* * Print the necessary mi for a session and name. */ -static int mi_print(char *session_name) +static int mi_print(const char *session_name) { int ret; @@ -66,8 +64,7 @@ static int mi_print(char *session_name) } /* Session name */ - ret = mi_lttng_writer_write_element_string(writer , config_element_name, - session_name); + ret = mi_lttng_writer_write_element_string(writer, config_element_name, session_name); if (ret) { goto end; } @@ -84,16 +81,15 @@ end: /* * set_session */ -static int set_session(void) +static int set_session(const char *session_name) { int ret = CMD_SUCCESS; int count, i; unsigned int session_found = 0; struct lttng_session *sessions; - if (opt_session_name && strlen(opt_session_name) > NAME_MAX) { - ERR("Session name too long. Length must be lower or equal to %d", - NAME_MAX); + if (session_name && strlen(session_name) > NAME_MAX) { + ERR("Session name too long. Length must be lower or equal to %d", NAME_MAX); ret = CMD_ERROR; goto end; } @@ -106,28 +102,28 @@ static int set_session(void) } for (i = 0; i < count; i++) { - if (strncmp(sessions[i].name, opt_session_name, NAME_MAX) == 0) { + if (strncmp(sessions[i].name, session_name, NAME_MAX) == 0) { session_found = 1; break; } } if (!session_found) { - ERR("Session '%s' not found", opt_session_name); + ERR("Session '%s' not found", session_name); ret = CMD_ERROR; goto error; } - ret = config_init(opt_session_name); + ret = config_init(session_name); if (ret < 0) { ERR("Unable to set session name"); ret = CMD_ERROR; goto error; } - MSG("Session set to %s", opt_session_name); + MSG("Session set to %s", session_name); if (lttng_opt_mi) { - ret = mi_print(opt_session_name); + ret = mi_print(session_name); if (ret) { ret = CMD_ERROR; goto error; @@ -149,6 +145,7 @@ int cmd_set_session(int argc, const char **argv) { int opt, ret = CMD_SUCCESS, command_ret = CMD_SUCCESS, success = 1; static poptContext pc; + const char *arg_session_name = NULL; pc = poptGetContext(NULL, argc, argv, long_options, 0); poptReadDefaultConfig(pc, 0); @@ -167,8 +164,8 @@ int cmd_set_session(int argc, const char **argv) } } - opt_session_name = (char *) poptGetArg(pc); - if (opt_session_name == NULL) { + arg_session_name = poptGetArg(pc); + if (arg_session_name == NULL) { ERR("Missing session name"); ret = CMD_ERROR; goto end; @@ -183,23 +180,21 @@ int cmd_set_session(int argc, const char **argv) } /* Open command element */ - ret = mi_lttng_writer_command_open(writer, - mi_lttng_element_command_set_session); + ret = mi_lttng_writer_command_open(writer, mi_lttng_element_command_set_session); if (ret) { ret = CMD_ERROR; goto end; } /* Open output element */ - ret = mi_lttng_writer_open_element(writer, - mi_lttng_element_command_output); + ret = mi_lttng_writer_open_element(writer, mi_lttng_element_command_output); if (ret) { ret = CMD_ERROR; goto end; } } - command_ret = set_session(); + command_ret = set_session(arg_session_name); if (command_ret) { success = 0; } @@ -214,8 +209,8 @@ int cmd_set_session(int argc, const char **argv) } /* Success ? */ - ret = mi_lttng_writer_write_element_bool(writer, - mi_lttng_element_command_success, success); + ret = mi_lttng_writer_write_element_bool( + writer, mi_lttng_element_command_success, success); if (ret) { ret = CMD_ERROR; goto end;