X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng%2Fcommands%2Fenable_events.c;h=1df76e052d04748ee7d3556e0b17a96d491dfb0e;hb=f63488d36657089a47fbd8edc32ce6476fd0dee2;hp=959b38bc29b022ea18e9397a26bd49e82aba375c;hpb=aeb5443d0a475ef70fdaf3ceaa8f764f734453cd;p=lttng-tools.git diff --git a/src/bin/lttng/commands/enable_events.c b/src/bin/lttng/commands/enable_events.c index 959b38bc2..1df76e052 100644 --- a/src/bin/lttng/commands/enable_events.c +++ b/src/bin/lttng/commands/enable_events.c @@ -154,8 +154,13 @@ static int parse_probe_opts(struct lttng_event *ev, char *opt) /* Check for address */ match = sscanf(opt, "%" S_HEX_LEN_SCANF_IS_A_BROKEN_API "s", s_hex); if (match > 0) { - if (*s_hex == '\0') { - ERR("Invalid probe address %s", s_hex); + /* + * Return an error if the first character of the tentative + * address is NULL or not a digit. It can be "0" if the address + * is in hexadecimal and can be 1 to 9 if it's in decimal. + */ + if (*s_hex == '\0' || !isdigit(*s_hex)) { + ERR("Invalid probe description %s", s_hex); ret = CMD_ERROR; goto end; }