CTF2: add to relayd supported trace format
[deliverable/lttng-tools.git] / src / common / sessiond-comm / relayd.hpp
index 0f5adaa94bba32443286bcefe1d99c9f445e96a8..49d3ed1f7ea34f2fb62a9f555f346e54704c2876 100644 (file)
@@ -341,10 +341,30 @@ enum lttcomm_relayd_configuration_flag {
        LTTCOMM_RELAYD_CONFIGURATION_FLAG_CLEAR_ALLOWED = (1 << 0),
 };
 
+enum lttcomm_relayd_configuration_query_flag {
+       LTTCOMM_RELAYD_CONFIGURATION_QUERY_FLAG_SUPPORTED_TRACE_FORMAT = (1 << 0),
+       LTTCOMM_RELAYD_CONFIGURATION_QUERY_FLAG_MASK = 0x01
+};
+
+enum lttcomm_relayd_configuration_trace_format_flag {
+       LTTCOMM_RELAYD_CONFIGURATION_TRACE_FORMAT_SUPPORTED_CTF1 = (1 << 0),
+       LTTCOMM_RELAYD_CONFIGURATION_TRACE_FORMAT_SUPPORTED_CTF2 = (1 << 1)
+};
+
 struct lttcomm_relayd_get_configuration {
        uint64_t query_flags;
 } LTTNG_PACKED;
 
+struct lttcomm_relayd_get_configuration_specialized_query_reply {
+       uint64_t query_flag; // Single flag, enum lttcomm_relayd_configuration_trace_format_flag
+       uint64_t payload_len;
+       /*
+        * Payload dependant on type
+        * LTTCOMM_RELAYD_CONFIGURATION_QUERY_FLAG_SUPPORTED_TRACE_FORMAT:
+        *    uint64_t, bitfield of lttcomm_relayd_configuration_trace_format_flag.
+        */
+       char payload[];
+} LTTNG_PACKED;
 /*
  * Used to return a relay daemon's configuration in reply to the
  * RELAYD_GET_CONFIGURATION command.
@@ -353,7 +373,11 @@ struct lttcomm_relayd_get_configuration_reply {
        struct lttcomm_relayd_generic_reply generic;
        /* Set of lttcomm_relayd_configuration_flag. */
        uint64_t relayd_configuration_flags;
-       /* Optional variable-length payload. */
+       /*
+        * Optional variable-length payload.
+        * When N query flags are used, it is expected that N dynamic sized
+        * lttcomm_relayd_get_configuration_specialized_query_reply be present.
+        */
        char payload[];
 } LTTNG_PACKED;
 
This page took 0.024637 seconds and 5 git commands to generate.