Blame SOURCES/0001-quic-Check-we-have-some-data-to-start-decoding-quic-.patch

d84b9c
From d9cc2d4659950df230dfe30e5445b91d4c15604e Mon Sep 17 00:00:00 2001
d84b9c
From: Frediano Ziglio <freddy77@gmail.com>
d84b9c
Date: Wed, 29 Apr 2020 15:09:13 +0100
d84b9c
Subject: [PATCH spice-common 1/4] quic: Check we have some data to start
d84b9c
 decoding quic image
d84b9c
d84b9c
All paths already pass some data to quic_decode_begin but for the
d84b9c
test check it, it's not that expensive test.
d84b9c
Checking for not 0 is enough, all other words will potentially be
d84b9c
read calling more_io_words but we need one to avoid a potential
d84b9c
initial buffer overflow or deferencing an invalid pointer.
d84b9c
d84b9c
Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
d84b9c
Acked-by: Uri Lublin <uril@redhat.com>
d84b9c
---
d84b9c
 common/quic.c | 2 +-
d84b9c
 1 file changed, 1 insertion(+), 1 deletion(-)
d84b9c
d84b9c
diff --git a/subprojects/spice-common/common/quic.c b/subprojects/spice-common/common/quic.c
d84b9c
index 55a5d6c..e03f3af 100644
d84b9c
--- a/subprojects/spice-common/common/quic.c
d84b9c
+++ b/subprojects/spice-common/common/quic.c
d84b9c
@@ -1136,7 +1136,7 @@ int quic_decode_begin(QuicContext *quic, uint32_t *io_ptr, unsigned int num_io_w
d84b9c
     int channels;
d84b9c
     int bpc;
d84b9c
 
d84b9c
-    if (!encoder_reset(encoder, io_ptr, io_ptr_end)) {
d84b9c
+    if (!num_io_words || !encoder_reset(encoder, io_ptr, io_ptr_end)) {
d84b9c
         return QUIC_ERROR;
d84b9c
     }
d84b9c
 
d84b9c
-- 
d84b9c
2.25.4
d84b9c