X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Frelayd%2Frelayd.cpp;h=12658dc6856655320203e84e8e542d97130876c5;hb=c15e2d3d72435e0e1e73db51b1ef896a75740ef0;hp=f2a19050574667d05c5f00a07542453ec2e416c2;hpb=328c2fe7297c941aa9cbcfa4ce944fca1bd7300f;p=lttng-tools.git diff --git a/src/common/relayd/relayd.cpp b/src/common/relayd/relayd.cpp index f2a190505..12658dc68 100644 --- a/src/common/relayd/relayd.cpp +++ b/src/common/relayd/relayd.cpp @@ -1212,16 +1212,16 @@ int relayd_rotate_streams(struct lttcomm_relayd_sock *sock, unsigned int i; struct lttng_dynamic_buffer payload; struct lttcomm_relayd_generic_reply reply = {}; - const struct lttcomm_relayd_rotate_streams msg = { - .stream_count = htobe32((uint32_t) stream_count), - .new_chunk_id = (typeof(msg.new_chunk_id)) { - .is_set = !!new_chunk_id, - .value = htobe64(new_chunk_id ? *new_chunk_id : 0), - }, - }; + struct lttcomm_relayd_rotate_streams msg; char new_chunk_id_buf[MAX_INT_DEC_LEN(*new_chunk_id)] = {}; const char *new_chunk_id_str; + msg.stream_count = htobe32((uint32_t) stream_count); + msg.new_chunk_id = (typeof(msg.new_chunk_id)){ + .is_set = !!new_chunk_id, + .value = htobe64(new_chunk_id ? *new_chunk_id : 0), + }; + if (!relayd_supports_chunks(sock)) { DBG("Refusing to rotate remote streams: relayd does not support chunks"); return 0; @@ -1346,11 +1346,9 @@ int relayd_create_trace_chunk(struct lttcomm_relayd_sock *sock, } chunk_name_length = overridden_name ? (strlen(chunk_name) + 1) : 0; - msg = (typeof(msg)){ - .chunk_id = htobe64(chunk_id), - .creation_timestamp = htobe64((uint64_t) creation_timestamp), - .override_name_length = htobe32((uint32_t) chunk_name_length), - }; + msg.chunk_id = htobe64(chunk_id); + msg.creation_timestamp = htobe64((uint64_t) creation_timestamp); + msg.override_name_length = htobe32((uint32_t) chunk_name_length); ret = lttng_dynamic_buffer_append(&payload, &msg, sizeof(msg)); if (ret) {