From: Jeff Lucovsky Date: Thu, 13 Jun 2019 23:52:07 +0000 (-0400) Subject: output/json: Avoid use of uninitialized value X-Git-Tag: suricata-5.0.0-rc1~253 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d2fdbc7d6f7e253c3a892e30dfba7af0cf6ac4d9;p=thirdparty%2Fsuricata.git output/json: Avoid use of uninitialized value In JsonPacket, a Base64Decode error could cause an uninitialized variable to be used because its return value is ignored. --- diff --git a/src/output-json.c b/src/output-json.c index b44ee79c72..a9355cd2ce 100644 --- a/src/output-json.c +++ b/src/output-json.c @@ -410,8 +410,9 @@ void JsonPacket(const Packet *p, json_t *js, unsigned long max_length) unsigned long max_len = max_length == 0 ? GET_PKT_LEN(p) : max_length; unsigned long len = 2 * max_len; uint8_t encoded_packet[len]; - Base64Encode((unsigned char*) GET_PKT_DATA(p), max_len, encoded_packet, &len); - json_object_set_new(js, "packet", json_string((char *)encoded_packet)); + if (Base64Encode((unsigned char*) GET_PKT_DATA(p), max_len, encoded_packet, &len) == SC_BASE64_OK) { + json_object_set_new(js, "packet", json_string((char *)encoded_packet)); + } /* Create packet info. */ json_t *packetinfo_js = json_object();