From: Gert Doering Date: Tue, 8 Nov 2016 09:17:12 +0000 (+0100) Subject: Check previously-unchecked buf_alloc_write() call in crypto self-test. X-Git-Tag: v2.4_beta1~39 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=63bdc6ce66a970f0584bbb1d4a8cae98b36ee831;p=thirdparty%2Fopenvpn.git Check previously-unchecked buf_alloc_write() call in crypto self-test. "It cannot be NULL", but since this is self-test infrastructure, assume the worst - add ASSERT() check to ensure assumptions are true. Found by Coverity. Signed-off-by: Gert Doering Acked-by: Steffan Karger Message-Id: <1478596632-22842-1-git-send-email-gert@greenie.muc.de> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg12940.html Signed-off-by: Gert Doering --- diff --git a/src/openvpn/crypto.c b/src/openvpn/crypto.c index 6e1e46bd1..0212450be 100644 --- a/src/openvpn/crypto.c +++ b/src/openvpn/crypto.c @@ -1028,6 +1028,7 @@ test_crypto (struct crypto_options *co, struct frame* frame) struct buffer encrypt_workspace = alloc_buf_gc (BUF_SIZE (frame), &gc); struct buffer decrypt_workspace = alloc_buf_gc (BUF_SIZE (frame), &gc); struct buffer buf = clear_buf(); + void *buf_p; /* init work */ ASSERT (buf_init (&work, FRAME_HEADROOM (frame))); @@ -1073,7 +1074,9 @@ test_crypto (struct crypto_options *co, struct frame* frame) /* copy source to input buf */ buf = work; - memcpy (buf_write_alloc (&buf, BLEN (&src)), BPTR (&src), BLEN (&src)); + buf_p = buf_write_alloc (&buf, BLEN (&src)); + ASSERT(buf_p); + memcpy (buf_p, BPTR (&src), BLEN (&src)); /* initialize work buffer with FRAME_HEADROOM bytes of prepend capacity */ ASSERT (buf_init (&encrypt_workspace, FRAME_HEADROOM (frame)));