[openssh-commits] [openssh] 01/01: upstream: fix some memleaks in test_helper code

git+noreply at mindrot.org git+noreply at mindrot.org
Fri Aug 2 11:42:32 AEST 2019


This is an automated email from the git hooks/post-receive script.

djm pushed a commit to branch master
in repository openssh.

commit c4ffb72593c08921cf9291bc05a5ef1d0aaa6891
Author: djm at openbsd.org <djm at openbsd.org>
Date:   Fri Aug 2 01:41:24 2019 +0000

    upstream: fix some memleaks in test_helper code
    
    bz#3037 from Jitendra Sharma
    
    OpenBSD-Regress-ID: 71440fa9186f5842a65ce9a27159385c6cb6f751
---
 regress/unittests/test_helper/test_helper.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/regress/unittests/test_helper/test_helper.c b/regress/unittests/test_helper/test_helper.c
index e7a47b26..127e76c2 100644
--- a/regress/unittests/test_helper/test_helper.c
+++ b/regress/unittests/test_helper/test_helper.c
@@ -1,4 +1,4 @@
-/*	$OpenBSD: test_helper.c,v 1.11 2018/11/23 02:53:57 dtucker Exp $	*/
+/*	$OpenBSD: test_helper.c,v 1.12 2019/08/02 01:41:24 djm Exp $	*/
 /*
  * Copyright (c) 2011 Damien Miller <djm at mindrot.org>
  *
@@ -391,6 +391,8 @@ assert_mem(const char *file, int line, const char *a1, const char *a2,
     const void *aa1, const void *aa2, size_t l, enum test_predicate pred)
 {
 	int r;
+	char *aa1_tohex = NULL;
+	char *aa2_tohex = NULL;
 
 	if (l == 0)
 		return;
@@ -401,8 +403,12 @@ assert_mem(const char *file, int line, const char *a1, const char *a2,
 	r = memcmp(aa1, aa2, l);
 	TEST_CHECK_INT(r, pred);
 	test_header(file, line, a1, a2, "STRING", pred);
-	fprintf(stderr, "%12s = %s (len %zu)\n", a1, tohex(aa1, MIN(l, 256)), l);
-	fprintf(stderr, "%12s = %s (len %zu)\n", a2, tohex(aa2, MIN(l, 256)), l);
+	aa1_tohex = tohex(aa1, MIN(l, 256));
+	aa2_tohex = tohex(aa2, MIN(l, 256));
+	fprintf(stderr, "%12s = %s (len %zu)\n", a1, aa1_tohex, l);
+	fprintf(stderr, "%12s = %s (len %zu)\n", a2, aa2_tohex, l);
+	free(aa1_tohex);
+	free(aa2_tohex);
 	test_die();
 }
 
@@ -427,6 +433,7 @@ assert_mem_filled(const char *file, int line, const char *a1,
 	size_t where = -1;
 	int r;
 	char tmp[64];
+	char *aa1_tohex = NULL;
 
 	if (l == 0)
 		return;
@@ -436,8 +443,10 @@ assert_mem_filled(const char *file, int line, const char *a1,
 	r = memvalcmp(aa1, v, l, &where);
 	TEST_CHECK_INT(r, pred);
 	test_header(file, line, a1, NULL, "MEM_ZERO", pred);
+	aa1_tohex = tohex(aa1, MIN(l, 20));
 	fprintf(stderr, "%20s = %s%s (len %zu)\n", a1,
-	    tohex(aa1, MIN(l, 20)), l > 20 ? "..." : "", l);
+	    aa1_tohex, l > 20 ? "..." : "", l);
+	free(aa1_tohex);
 	snprintf(tmp, sizeof(tmp), "(%s)[%zu]", a1, where);
 	fprintf(stderr, "%20s = 0x%02x (expected 0x%02x)\n", tmp,
 	    ((u_char *)aa1)[where], v);

-- 
To stop receiving notification emails like this one, please contact
djm at mindrot.org.


More information about the openssh-commits mailing list