mirror of
https://github.com/OpenVPN/openvpn.git
synced 2024-09-20 03:52:28 +02:00
test_tls_crypt.c: fix global-buffer-overflow found by AddressSanitizer
When writing data to buffer we incorrectly specify source length - sizeof for pointer returns 8, but actual buffer length is 1. Fix by replacing empty global string to local string literal and specifying the correct length. Signed-off-by: Lev Stipakov <lev@openvpn.net> Acked-by: Arne Schwabe <arne@rfc2549.org> Message-Id: <1548164060-13144-1-git-send-email-lstipakov@gmail.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg18140.html Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
parent
f9f1605194
commit
a3fd78d486
@ -49,8 +49,6 @@
|
|||||||
#define PARAM1 "param1"
|
#define PARAM1 "param1"
|
||||||
#define PARAM2 "param two"
|
#define PARAM2 "param two"
|
||||||
|
|
||||||
static const char *plaintext_short = "";
|
|
||||||
|
|
||||||
static const char *test_server_key = \
|
static const char *test_server_key = \
|
||||||
"-----BEGIN OpenVPN tls-crypt-v2 server key-----\n"
|
"-----BEGIN OpenVPN tls-crypt-v2 server key-----\n"
|
||||||
"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4v\n"
|
"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4v\n"
|
||||||
@ -148,10 +146,12 @@ test_tls_crypt_setup(void **state) {
|
|||||||
ctx->unwrapped = alloc_buf(TESTBUF_SIZE);
|
ctx->unwrapped = alloc_buf(TESTBUF_SIZE);
|
||||||
|
|
||||||
/* Write test plaintext */
|
/* Write test plaintext */
|
||||||
buf_write(&ctx->source, plaintext_short, sizeof(plaintext_short));
|
const char *plaintext = "1234567890";
|
||||||
|
buf_write(&ctx->source, plaintext, strlen(plaintext));
|
||||||
|
|
||||||
/* Write dummy opcode and session id */
|
/* Write test ciphertext */
|
||||||
buf_write(&ctx->ciphertext, "012345678", 1 + 8);
|
const char *ciphertext = "012345678";
|
||||||
|
buf_write(&ctx->ciphertext, ciphertext, strlen(ciphertext));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user