X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconfig%2Fconfig.c;h=1a32b0b5f0281c03d5e870797ab937c0a356ed8f;hb=301423df3f200caebed2169514560170ae00dd3a;hp=5e100a7ab6c9c6e66848f5010acc711ffba51b8d;hpb=dcf266c050443412ec370bf86ddb3fddd2809eb9;p=lttng-tools.git diff --git a/src/common/config/config.c b/src/common/config/config.c index 5e100a7ab..1a32b0b5f 100644 --- a/src/common/config/config.c +++ b/src/common/config/config.c @@ -1238,7 +1238,7 @@ int create_session(const char *name, goto end; } - for (i = 0; i < (sizeof(domains) / sizeof(*domain)); i++) { + for (i = 0; i < (sizeof(domains) / sizeof(domains[0])); i++) { domain = domains[i]; if (!domain) { continue; @@ -2198,12 +2198,24 @@ int process_session_node(xmlNodePtr session_node, const char *session_name, switch (domain->type) { case LTTNG_DOMAIN_KERNEL: + if (kernel_domain) { + /* Same domain seen twice, invalid! */ + goto domain_init_error; + } kernel_domain = domain; break; case LTTNG_DOMAIN_UST: + if (ust_domain) { + /* Same domain seen twice, invalid! */ + goto domain_init_error; + } ust_domain = domain; break; case LTTNG_DOMAIN_JUL: + if (jul_domain) { + /* Same domain seen twice, invalid! */ + goto domain_init_error; + } jul_domain = domain; break; default: