X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fconfig%2Fconfig.c;h=f93c5a678f12df5e8024bc21197a7900df12ce84;hp=e44710b5ae0872b7e3eded59460a6f70865b30f7;hb=6c1c0768320135c6936c371b09731851b508c023;hpb=14ce5bd8eefa248c5abedc32b02394ef74307e81 diff --git a/src/common/config/config.c b/src/common/config/config.c index e44710b5a..f93c5a678 100644 --- a/src/common/config/config.c +++ b/src/common/config/config.c @@ -16,6 +16,7 @@ */ #define _GNU_SOURCE +#define _LGPL_SOURCE #include #include #include @@ -118,6 +119,7 @@ const char * const config_domain_type_kernel = "KERNEL"; const char * const config_domain_type_ust = "UST"; const char * const config_domain_type_jul = "JUL"; const char * const config_domain_type_log4j = "LOG4J"; +const char * const config_domain_type_python = "PYTHON"; const char * const config_buffer_type_per_pid = "PER_PID"; const char * const config_buffer_type_per_uid = "PER_UID"; @@ -752,6 +754,8 @@ int get_domain_type(xmlChar *domain) ret = LTTNG_DOMAIN_JUL; } else if (!strcmp((char *) domain, config_domain_type_log4j)) { ret = LTTNG_DOMAIN_LOG4J; + } else if (!strcmp((char *) domain, config_domain_type_python)) { + ret = LTTNG_DOMAIN_PYTHON; } else { goto error; } @@ -2154,6 +2158,7 @@ int process_session_node(xmlNodePtr session_node, const char *session_name, struct lttng_domain *ust_domain = NULL; struct lttng_domain *jul_domain = NULL; struct lttng_domain *log4j_domain = NULL; + struct lttng_domain *python_domain = NULL; for (node = xmlFirstElementChild(session_node); node; node = xmlNextElementSibling(node)) { @@ -2287,6 +2292,13 @@ int process_session_node(xmlNodePtr session_node, const char *session_name, } log4j_domain = domain; break; + case LTTNG_DOMAIN_PYTHON: + if (python_domain) { + /* Same domain seen twice, invalid! */ + goto domain_init_error; + } + python_domain = domain; + break; default: WARN("Invalid domain type"); goto domain_init_error; @@ -2349,6 +2361,7 @@ error: free(ust_domain); free(jul_domain); free(log4j_domain); + free(python_domain); free(name); return ret; }