X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fcmd.c;h=b4521dfe3be28c63a083035b27ed121ad4dfbdd5;hp=b1d98639343917f9aad46249dbac6fd9ea039f94;hb=f5436bfcf6797b979b308a9af782750f9d079686;hpb=1dfd9906a04873e9d381bf559eb8551c203c8a2a diff --git a/src/bin/lttng-sessiond/cmd.c b/src/bin/lttng-sessiond/cmd.c index b1d986393..b4521dfe3 100644 --- a/src/bin/lttng-sessiond/cmd.c +++ b/src/bin/lttng-sessiond/cmd.c @@ -18,7 +18,6 @@ #define _GNU_SOURCE #define _LGPL_SOURCE #include -#include #include #include #include @@ -28,6 +27,7 @@ #include #include #include +#include #include "channel.h" #include "consumer.h" @@ -1048,7 +1048,7 @@ int cmd_enable_channel(struct ltt_session *session, assert(attr); assert(domain); - len = strnlen(attr->name, sizeof(attr->name)); + len = lttng_strnlen(attr->name, sizeof(attr->name)); /* Validate channel name */ if (attr->name[0] == '.' || @@ -1225,32 +1225,22 @@ int cmd_disable_event(struct ltt_session *session, switch (event->type) { case LTTNG_EVENT_ALL: - ret = event_kernel_disable_event_all(kchan); - if (ret != LTTNG_OK) { - goto error_unlock; - } - break; - case LTTNG_EVENT_TRACEPOINT: /* fall-through */ + case LTTNG_EVENT_TRACEPOINT: case LTTNG_EVENT_SYSCALL: - if (!strcmp(event_name, "*")) { - ret = event_kernel_disable_event_type(kchan, - event->type); + case LTTNG_EVENT_PROBE: + case LTTNG_EVENT_FUNCTION: + case LTTNG_EVENT_FUNCTION_ENTRY:/* fall-through */ + if (event_name[0] == '\0') { + ret = event_kernel_disable_event(kchan, + NULL, event->type); } else { ret = event_kernel_disable_event(kchan, - event_name); + event_name, event->type); } if (ret != LTTNG_OK) { goto error_unlock; } break; - case LTTNG_EVENT_PROBE: - case LTTNG_EVENT_FUNCTION: - case LTTNG_EVENT_FUNCTION_ENTRY: - ret = event_kernel_disable_event(kchan, event_name); - if (ret != LTTNG_OK) { - goto error_unlock; - } - break; default: ret = LTTNG_ERR_UNK; goto error_unlock; @@ -1273,7 +1263,7 @@ int cmd_disable_event(struct ltt_session *session, /* * If a non-default channel has been created in the - * session, explicitely require that -c chan_name needs + * session, explicitly require that -c chan_name needs * to be provided. */ if (usess->has_non_default_channel && channel_name[0] == '\0') { @@ -1290,10 +1280,12 @@ int cmd_disable_event(struct ltt_session *session, switch (event->type) { case LTTNG_EVENT_ALL: - if (strlen(event->name) == 1 && - !strncmp(event->name, "*", 1)) { - ret = event_ust_disable_all_tracepoints(usess, - uchan); + /* + * An empty event name means that everything + * should be disabled. + */ + if (event->name[0] == '\0') { + ret = event_ust_disable_all_tracepoints(usess, uchan); } else { ret = event_ust_disable_tracepoint(usess, uchan, event_name); @@ -1333,8 +1325,11 @@ int cmd_disable_event(struct ltt_session *session, ret = -LTTNG_ERR_UST_EVENT_NOT_FOUND; goto error_unlock; } - /* The wild card * means that everything should be disabled. */ - if (strncmp(event->name, "*", 1) == 0 && strlen(event->name) == 1) { + /* + * An empty event name means that everything + * should be disabled. + */ + if (event->name[0] == '\0') { ret = event_agent_disable_all(usess, agt); } else { ret = event_agent_disable(usess, agt, event_name);