*/
int lttng_opt_quiet;
int lttng_opt_verbose;
+int lttng_opt_mi;
/*
* Copy string from src to dst and enforce null terminated byte.
case LTTNG_DOMAIN_KERNEL:
case LTTNG_DOMAIN_UST:
case LTTNG_DOMAIN_JUL:
+ case LTTNG_DOMAIN_LOG4J:
memcpy(dst, src, sizeof(struct lttng_domain));
break;
default:
ret = -LTTNG_ERR_FILTER_INVAL;
goto parse_error;
}
+ /* Validate strings used as literals in the expression */
+ ret = filter_visitor_ir_validate_string(ctx);
+ if (ret) {
+ ret = -LTTNG_ERR_FILTER_INVAL;
+ goto parse_error;
+ }
dbg_printf("done\n");
dbg_printf("Generating bytecode... ");
* filtering by logger name.
*/
if (exclusion_count == 0 && filter_expression == NULL &&
- handle->domain.type != LTTNG_DOMAIN_JUL) {
+ (handle->domain.type != LTTNG_DOMAIN_JUL &&
+ handle->domain.type != LTTNG_DOMAIN_LOG4J)) {
goto ask_sessiond;
}
*/
/* Parse filter expression */
- if (filter_expression != NULL || handle->domain.type == LTTNG_DOMAIN_JUL) {
- if (handle->domain.type == LTTNG_DOMAIN_JUL) {
+ if (filter_expression != NULL || handle->domain.type == LTTNG_DOMAIN_JUL
+ || handle->domain.type == LTTNG_DOMAIN_LOG4J) {
+ if (handle->domain.type == LTTNG_DOMAIN_JUL ||
+ handle->domain.type == LTTNG_DOMAIN_LOG4J) {
char *jul_filter;
/* Setup JUL filter if needed. */