Filter: index array, sequences, implement bitwise binary operators
[lttng-tools.git] / src / lib / lttng-ctl / lttng-ctl.c
index 3db9b89b440d12796ce7565423cac04d2f7db2ad..8ca8e46effc4e16c4dca3c54fb3697172f47b966 100644 (file)
@@ -887,12 +887,6 @@ static int generate_filter(char *filter_expression,
                ret = -LTTNG_ERR_FILTER_INVAL;
                goto parse_error;
        }
-       ret = filter_visitor_set_parent(ctx);
-       if (ret) {
-               fprintf(stderr, "Set parent error\n");
-               ret = -LTTNG_ERR_FILTER_INVAL;
-               goto parse_error;
-       }
        if (print_xml) {
                ret = filter_visitor_print_xml(ctx, stdout, 0);
                if (ret) {
@@ -2756,6 +2750,50 @@ end:
        return ret;
 }
 
+int lttng_session_get_current_archive_location(const char *session_name,
+               char **chunk_path)
+{
+       struct lttcomm_session_msg lsm;
+       struct lttng_session_get_current_output_return *output_return = NULL;
+       int ret;
+       size_t path_len;
+
+       memset(&lsm, 0, sizeof(lsm));
+       lsm.cmd_type = LTTNG_SESSION_GET_CURRENT_OUTPUT;
+       ret = lttng_strncpy(lsm.session.name, session_name,
+                       sizeof(lsm.session.name));
+       if (ret) {
+               ret = -LTTNG_ERR_INVALID;
+               goto end;
+       }
+
+       ret = lttng_ctl_ask_sessiond(&lsm, (void **) &output_return);
+       if (ret < 0) {
+               ret = -1;
+               goto end;
+       }
+
+       path_len = lttng_strnlen(output_return->path,
+                       sizeof(output_return->path));
+       if (path_len == 0 || path_len == sizeof(output_return->path)) {
+               ret = -LTTNG_ERR_NO_SESSION_OUTPUT;
+               goto end;
+       }
+
+       *chunk_path = zmalloc(path_len + 1);
+       if (!*chunk_path) {
+               ret = -1;
+               goto end;
+       }
+       memcpy(*chunk_path, output_return->path, path_len);
+
+       ret = 0;
+
+end:
+       free(output_return);
+       return ret;
+}
+
 /*
  * lib constructor.
  */
This page took 0.024662 seconds and 5 git commands to generate.