projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement kernel filter support
[lttng-tools.git]
/
src
/
bin
/
lttng
/
commands
/
enable_events.c
diff --git
a/src/bin/lttng/commands/enable_events.c
b/src/bin/lttng/commands/enable_events.c
index 92ca76272bb54e78d40e432d674cc1c933f39b43..ab32994bdd95dc290a03986670c1450060f96445 100644
(file)
--- a/
src/bin/lttng/commands/enable_events.c
+++ b/
src/bin/lttng/commands/enable_events.c
@@
-334,6
+334,10
@@
static int loglevel_log4j_str_to_value(const char *inputstr)
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
+ if (!inputstr || strlen(inputstr) == 0) {
+ return -1;
+ }
+
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
@@
-373,6
+377,10
@@
static int loglevel_jul_str_to_value(const char *inputstr)
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
+ if (!inputstr || strlen(inputstr) == 0) {
+ return -1;
+ }
+
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
@@
-414,6
+422,10
@@
static int loglevel_python_str_to_value(const char *inputstr)
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
+ if (!inputstr || strlen(inputstr) == 0) {
+ return -1;
+ }
+
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
@@
-450,6
+462,10
@@
int loglevel_str_to_value(const char *inputstr)
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
int i = 0;
char str[LTTNG_SYMBOL_NAME_LEN];
+ if (!inputstr || strlen(inputstr) == 0) {
+ return -1;
+ }
+
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
/*
* Loop up to LTTNG_SYMBOL_NAME_LEN minus one because the NULL bytes is
* added at the end of the loop so a the upper bound we avoid the overflow.
@@
-697,11
+713,6
@@
static int enable_events(char *session_name)
memset(&dom, 0, sizeof(dom));
if (opt_kernel) {
memset(&dom, 0, sizeof(dom));
if (opt_kernel) {
- if (opt_filter) {
- ERR("Filter not implement for kernel tracing yet");
- ret = CMD_ERROR;
- goto error;
- }
if (opt_loglevel) {
WARN("Kernel loglevels are not supported.");
}
if (opt_loglevel) {
WARN("Kernel loglevels are not supported.");
}
@@
-761,7
+772,7
@@
static int enable_events(char *session_name)
/* Default setup for enable all */
if (opt_kernel) {
ev.type = opt_event_type;
/* Default setup for enable all */
if (opt_kernel) {
ev.type = opt_event_type;
-
ev.name[0] = '\0'
;
+
strcpy(ev.name, "*")
;
/* kernel loglevels not implemented */
ev.loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL;
} else {
/* kernel loglevels not implemented */
ev.loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL;
} else {
@@
-1018,9
+1029,12
@@
static int enable_events(char *session_name)
print_channel_name(channel_name));
switch (opt_event_type) {
print_channel_name(channel_name));
switch (opt_event_type) {
- case LTTNG_EVENT_ALL: /* Default behavior is tracepoint */
- ev.type = LTTNG_EVENT_TRACEPOINT;
- /* Fall-through */
+ case LTTNG_EVENT_ALL: /* Enable tracepoints and syscalls */
+ /* If event name differs from *, select tracepoint. */
+ if (strcmp(ev.name, "*")) {
+ ev.type = LTTNG_EVENT_TRACEPOINT;
+ }
+ break;
case LTTNG_EVENT_TRACEPOINT:
break;
case LTTNG_EVENT_PROBE:
case LTTNG_EVENT_TRACEPOINT:
break;
case LTTNG_EVENT_PROBE:
This page took
0.024795 seconds
and
4
git commands to generate.