Add support for star globbing patterns in event names
[lttng-modules.git] / lttng-events.c
index d00701466a5d47c532cf3d32c20368d19eda9527..6bfe710f57ea24b9d2da90fc4de04f96347da325 100644 (file)
@@ -51,6 +51,7 @@
 #include <lttng-tracer.h>
 #include <lttng-abi-old.h>
 #include <lttng-endian.h>
+#include <lttng-string-utils.h>
 #include <wrapper/vzalloc.h>
 #include <wrapper/ringbuffer/backend.h>
 #include <wrapper/ringbuffer/frontend.h>
@@ -1142,11 +1143,10 @@ fd_error:
  * Enabler management.
  */
 static
-int lttng_match_enabler_wildcard(const char *desc_name,
-               const char *name)
+int lttng_match_enabler_star_glob(const char *desc_name,
+               const char *pattern)
 {
-       /* Compare excluding final '*' */
-       if (strncmp(desc_name, name, strlen(name) - 1))
+       if (!strutils_star_glob_match(pattern, -1ULL, desc_name, -1ULL))
                return 0;
        return 1;
 }
@@ -1191,8 +1191,8 @@ int lttng_desc_match_enabler(const struct lttng_event_desc *desc,
                return -EINVAL;
        }
        switch (enabler->type) {
-       case LTTNG_ENABLER_WILDCARD:
-               return lttng_match_enabler_wildcard(desc_name, enabler_name);
+       case LTTNG_ENABLER_STAR_GLOB:
+               return lttng_match_enabler_star_glob(desc_name, enabler_name);
        case LTTNG_ENABLER_NAME:
                return lttng_match_enabler_name(desc_name, enabler_name);
        default:
This page took 0.024261 seconds and 4 git commands to generate.