Initial import of the snapshot ABI/API in lttng-ctl
[lttng-tools.git] / src / common / sessiond-comm / sessiond-comm.h
index ebb896b585e6fb759a9ea0c85f32c801f4d94ec2..aeca78e50b9d2b3efb998028ab8e49225d0e4ecc 100644 (file)
@@ -28,6 +28,7 @@
 #define _GNU_SOURCE
 #include <limits.h>
 #include <lttng/lttng.h>
+#include <lttng/snapshot-internal.h>
 #include <common/compat/socket.h>
 #include <common/uri.h>
 #include <common/defaults.h>
@@ -82,6 +83,10 @@ enum lttcomm_sessiond_command {
        LTTNG_ENABLE_EVENT_WITH_FILTER      = 22,
        LTTNG_HEALTH_CHECK                  = 23,
        LTTNG_DATA_PENDING                  = 24,
+       LTTNG_SNAPSHOT_ADD_OUTPUT           = 25,
+       LTTNG_SNAPSHOT_DEL_OUTPUT           = 26,
+       LTTNG_SNAPSHOT_LIST_OUTPUT          = 27,
+       LTTNG_SNAPSHOT_RECORD               = 28,
 };
 
 enum lttcomm_relayd_command {
@@ -240,6 +245,13 @@ struct lttcomm_session_msg {
                        /* Number of lttng_uri following */
                        uint32_t size;
                } LTTNG_PACKED uri;
+               struct {
+                       struct lttng_snapshot_output output;
+               } LTTNG_PACKED snapshot_output;
+               struct {
+                       uint32_t wait;
+                       struct lttng_snapshot_output output;
+               } LTTNG_PACKED snapshot_record;
        } u;
 } LTTNG_PACKED;
 
@@ -271,6 +283,10 @@ struct lttcomm_lttng_msg {
        char payload[];
 } LTTNG_PACKED;
 
+struct lttcomm_lttng_output_id {
+       uint32_t id;
+} LTTNG_PACKED;
+
 struct lttcomm_health_msg {
        uint32_t component;
        uint32_t cmd;
@@ -338,7 +354,7 @@ struct lttcomm_consumer_msg {
                        uint32_t gid;                           /* Group ID ot the session */
                        uint64_t relayd_id;                     /* Relayd id if apply. */
                        uint64_t key;                           /* Unique channel key. */
-                       unsigned char uuid[UUID_STR_LEN];       /* uuid for ust tracer. */
+                       unsigned char uuid[UUID_LEN];   /* uuid for ust tracer. */
                        uint32_t chan_id;                       /* Channel ID on the tracer side. */
                        uint64_t tracefile_size;        /* bytes */
                        uint32_t tracefile_count;       /* number of tracefiles */
This page took 0.023972 seconds and 4 git commands to generate.