From: Philippe Antoine Date: Fri, 1 Jul 2022 13:56:29 +0000 (+0200) Subject: mqtt: do not log reason_codes if there is none X-Git-Tag: suricata-7.0.0-beta1~368 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=262a93ce1815900fde837a7cd7bfa4cd17e43d50;p=thirdparty%2Fsuricata.git mqtt: do not log reason_codes if there is none Ticket: #5167 --- diff --git a/rust/src/mqtt/logger.rs b/rust/src/mqtt/logger.rs index d7b343931e..22fc7de079 100644 --- a/rust/src/mqtt/logger.rs +++ b/rust/src/mqtt/logger.rs @@ -233,11 +233,13 @@ fn log_mqtt(tx: &MQTTTransaction, flags: u32, js: &mut JsonBuilder) -> Result<() log_mqtt_header(js, &msg.header)?; js.set_uint("message_id", unsuback.message_id as u64)?; if let Some(codes) = &unsuback.reason_codes { - js.open_array("reason_codes")?; - for t in codes { - js.append_uint(*t as u64)?; + if codes.len() > 0 { + js.open_array("reason_codes")?; + for t in codes { + js.append_uint(*t as u64)?; + } + js.close()?; // reason_codes } - js.close()?; // reason_codes } js.close()?; // unsuback }