relayd: Retrieve a relay_session's trace chunk on creation
[lttng-tools.git] / src / bin / lttng-relayd / cmd-2-11.c
index eb03999cf9a4aac73b6cf0650e3bad118e3aaa14..269eeb9b078a707d4f22e8995a89cc7aa73147d9 100644 (file)
@@ -31,7 +31,9 @@
 
 int cmd_create_session_2_11(const struct lttng_buffer_view *payload,
                char *session_name, char *hostname,
-               uint32_t *live_timer, bool *snapshot)
+               uint32_t *live_timer, bool *snapshot,
+               uint64_t *id_sessiond, lttng_uuid sessiond_uuid,
+               uint64_t *current_chunk_id)
 {
        int ret;
        struct lttcomm_relayd_create_session_2_11 header;
@@ -53,6 +55,8 @@ int cmd_create_session_2_11(const struct lttng_buffer_view *payload,
        header.hostname_len = be32toh(header.hostname_len);
        header.live_timer = be32toh(header.live_timer);
 
+       lttng_uuid_copy(sessiond_uuid, header.sessiond_uuid);
+
        received_names_size = header.session_name_len + header.hostname_len;
        if (payload->size < header_len + received_names_size) {
                ERR("Unexpected payload size in \"cmd_create_session_2_11\": expected >= %zu bytes, got %zu bytes",
@@ -112,7 +116,8 @@ error:
  */
 int cmd_recv_stream_2_11(const struct lttng_buffer_view *payload,
                char **ret_path_name, char **ret_channel_name,
-               uint64_t *tracefile_size, uint64_t *tracefile_count)
+               uint64_t *tracefile_size, uint64_t *tracefile_count,
+               uint64_t *trace_archive_id)
 {
        int ret;
        struct lttcomm_relayd_add_stream_2_11 header;
@@ -136,6 +141,7 @@ int cmd_recv_stream_2_11(const struct lttng_buffer_view *payload,
        header.pathname_len = be32toh(header.pathname_len);
        header.tracefile_size = be64toh(header.tracefile_size);
        header.tracefile_count = be64toh(header.tracefile_count);
+       header.trace_archive_id = be64toh(header.trace_archive_id);
 
        received_names_size = header.channel_name_len + header.pathname_len;
        if (payload->size < header_len + received_names_size) {
@@ -191,6 +197,7 @@ int cmd_recv_stream_2_11(const struct lttng_buffer_view *payload,
 
        *tracefile_size = header.tracefile_size;
        *tracefile_count = header.tracefile_count;
+       *trace_archive_id = header.trace_archive_id;
        *ret_path_name = path_name;
        *ret_channel_name = channel_name;
        /* Move ownership to caller */
This page took 0.024272 seconds and 4 git commands to generate.