summaryrefslogtreecommitdiff
path: root/src/trace_output.c
diff options
context:
space:
mode:
author童宗振 <[email protected]>2024-05-22 10:28:33 +0000
committer童宗振 <[email protected]>2024-05-22 10:28:33 +0000
commit5752ca8b51651a942542922bcb2c699f226f041c (patch)
treec9355d38d854d25d8c2d636dc89bb3f6ed0e1cd5 /src/trace_output.c
parent33cb9624a496401947b470c9b1f50e49bb049446 (diff)
parent5ca2802cb39965c482cdfd9f9bfba2fa443f08f5 (diff)
Merge branch 'dont_send_zero_port_in_messagpack' into 'master'v0.1.14-20240522
(TSG-21228)Dont send zero port in messagpack See merge request tsg/dp_telemetry_app!42
Diffstat (limited to 'src/trace_output.c')
-rw-r--r--src/trace_output.c28
1 files changed, 20 insertions, 8 deletions
diff --git a/src/trace_output.c b/src/trace_output.c
index 19ccf2c..ffc1961 100644
--- a/src/trace_output.c
+++ b/src/trace_output.c
@@ -540,17 +540,29 @@ static void dp_trace_decode_to_message_pack(marsio_buff_t * mr_mbuf, char ** dat
mpack_write_cstr(&writer, "traffic_link_id");
mpack_write_i32(&writer, trace_buff_info.traffic_link_id);
- mpack_write_cstr(&writer, "source_ip");
- mpack_write_cstr(&writer, trace_buff_info.inner_src_addr_str);
+ if (strlen(trace_buff_info.inner_src_addr_str) != 0)
+ {
+ mpack_write_cstr(&writer, "source_ip");
+ mpack_write_cstr(&writer, trace_buff_info.inner_src_addr_str);
+ }
- mpack_write_cstr(&writer, "source_port");
- mpack_write_i32(&writer, trace_buff_info.inner_src_port);
+ if (trace_buff_info.inner_src_port != 0)
+ {
+ mpack_write_cstr(&writer, "source_port");
+ mpack_write_i32(&writer, trace_buff_info.inner_src_port);
+ }
- mpack_write_cstr(&writer, "destination_ip");
- mpack_write_cstr(&writer, trace_buff_info.inner_dst_addr_str);
+ if (strlen(trace_buff_info.inner_dst_addr_str) != 0)
+ {
+ mpack_write_cstr(&writer, "destination_ip");
+ mpack_write_cstr(&writer, trace_buff_info.inner_dst_addr_str);
+ }
- mpack_write_cstr(&writer, "destination_port");
- mpack_write_i32(&writer, trace_buff_info.inner_dst_port);
+ if (trace_buff_info.inner_dst_port != 0)
+ {
+ mpack_write_cstr(&writer, "destination_port");
+ mpack_write_i32(&writer, trace_buff_info.inner_dst_port);
+ }
unsigned int snaplen = trace_buff_info.snaplen;
snaplen = (snaplen < marsio_buff_datalen(mr_mbuf)) ? snaplen : marsio_buff_datalen(mr_mbuf);