From 014e956d14322163d9740bb6f35580f21358f702 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Galarneau?= Date: Tue, 10 Sep 2019 20:35:19 -0400 Subject: [PATCH] Fix: dereference of NULL pointer in stream_write() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit stream_write() can be used with a NULL packet to write padding only to a stream. In the case of a metadata stream, packet is assumed to always be non-NULL which may not always be true. Signed-off-by: Jérémie Galarneau --- src/bin/lttng-relayd/stream.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bin/lttng-relayd/stream.c b/src/bin/lttng-relayd/stream.c index c02820d31..f98b46557 100644 --- a/src/bin/lttng-relayd/stream.c +++ b/src/bin/lttng-relayd/stream.c @@ -1015,7 +1015,8 @@ int stream_write(struct relay_stream *stream, } if (stream->is_metadata) { - stream->metadata_received += packet->size + padding_len; + stream->metadata_received += packet ? packet->size : 0; + stream->metadata_received += padding_len; } DBG("Wrote to %sstream %" PRIu64 ": data_length = %zu, padding_length = %zu", -- 2.34.1