X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng%2Fcommands%2Fenable_events.c;h=6889b63d73eb12cacc8db055c4bd0d2a0bcc1fd1;hp=41be3a5a03fbd5476732657e35b46769b347c02d;hb=b9e1aca71d29731a651a6cabced299d7488c3724;hpb=36aa2f64f75a08a3f933197d5d464e6a31e865f7 diff --git a/src/bin/lttng/commands/enable_events.c b/src/bin/lttng/commands/enable_events.c index 41be3a5a0..6889b63d7 100644 --- a/src/bin/lttng/commands/enable_events.c +++ b/src/bin/lttng/commands/enable_events.c @@ -305,12 +305,10 @@ end: */ static int warn_userspace_probe_syntax(const char *symbol) { - unsigned long addr = 0; - size_t offset = 0; int ret; /* Check if the symbol field is an hex address. */ - ret = sscanf(symbol, "0x%lx", &addr); + ret = sscanf(symbol, "0x%*x"); if (ret > 0) { /* If there is a match, print a warning and return an error. */ ERR("Userspace probe on address not supported yet."); @@ -319,7 +317,7 @@ static int warn_userspace_probe_syntax(const char *symbol) } /* Check if the symbol field is an decimal address. */ - ret = sscanf(symbol, "%lu", &addr); + ret = sscanf(symbol, "%*u"); if (ret > 0) { /* If there is a match, print a warning and return an error. */ ERR("Userspace probe on address not supported yet."); @@ -328,7 +326,7 @@ static int warn_userspace_probe_syntax(const char *symbol) } /* Check if the symbol field is symbol+hex_offset. */ - ret = sscanf(symbol, "%*[^+]+0x%lx", &offset); + ret = sscanf(symbol, "%*[^+]+0x%*x"); if (ret > 0) { /* If there is a match, print a warning and return an error. */ ERR("Userspace probe on symbol+offset not supported yet."); @@ -337,7 +335,7 @@ static int warn_userspace_probe_syntax(const char *symbol) } /* Check if the symbol field is symbol+decimal_offset. */ - ret = sscanf(symbol, "%*[^+]+%lu", &offset); + ret = sscanf(symbol, "%*[^+]+%*u"); if (ret > 0) { /* If there is a match, print a warning and return an error. */ ERR("Userspace probe on symbol+offset not supported yet."); @@ -437,7 +435,7 @@ static int parse_userspace_probe_opts(struct lttng_event *ev, char *opt) lookup_method = lttng_userspace_probe_location_lookup_method_tracepoint_sdt_create(); if (!lookup_method) { - WARN("Failed to create ELF lookup method"); + WARN("Failed to create SDT lookup method"); ret = CMD_ERROR; goto end_string; } @@ -486,11 +484,12 @@ static int parse_userspace_probe_opts(struct lttng_event *ev, char *opt) } /* - * Check if the file exists using access(2). If it does not, walk the - * $PATH. + * Check if the file exists using access(2), If it does not, + * return an error. */ ret = access(real_target_path, F_OK); if (ret) { + ERR("Cannot find binary at path: %s.", real_target_path); ret = CMD_ERROR; goto end_destroy_lookup_method; } @@ -806,7 +805,7 @@ char *print_exclusions(char **names) { int length = 0; int i; - const char *preamble = " excluding "; + const char preamble[] = " excluding "; char *ret; int count = names ? strutils_array_of_strings_len(names) : 0; @@ -819,9 +818,8 @@ char *print_exclusions(char **names) length += strlen(names[i]) + 4; } - /* add length of preamble + one for NUL - one for last (missing) comma */ - length += strlen(preamble); - ret = zmalloc(length + 1); + length += sizeof(preamble); + ret = zmalloc(length); if (!ret) { return NULL; }