From 18bddeaaf225d5becfc10cd2c6a1d037c90574a2 Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Tue, 11 Jun 2019 15:10:21 +0200 Subject: [PATCH] resolved: Fix incorrect use of OpenSSL BUF_MEM Fixes: #12763 Upstream-Status: Backport [Not yet released] https://github.com/systemd/systemd/commit/18bddeaaf225d5becfc10cd2c6a1d037c90574a2 Signed-off-by: Alex Kiernan --- src/resolve/resolved-dnstls-openssl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/resolve/resolved-dnstls-openssl.c b/src/resolve/resolved-dnstls-openssl.c index f269e4d6487f..5d9223007581 100644 --- a/src/resolve/resolved-dnstls-openssl.c +++ b/src/resolve/resolved-dnstls-openssl.c @@ -6,6 +6,7 @@ #include #include +#include #include "io-util.h" #include "resolved-dns-stream.h" @@ -34,9 +35,11 @@ static int dnstls_flush_write_buffer(DnsStream *stream) { return ss; } else { stream->dnstls_data.write_buffer->length -= ss; - stream->dnstls_data.write_buffer->data += ss; if (stream->dnstls_data.write_buffer->length > 0) { + memmove(stream->dnstls_data.write_buffer->data, + stream->dnstls_data.write_buffer->data + ss, + stream->dnstls_data.write_buffer->length); stream->dnstls_events |= EPOLLOUT; return -EAGAIN; } -- 2.17.1