From ada22597ce895c4af1fad824e8da2a86aa9bd5f4 Mon Sep 17 00:00:00 2001 From: Bernd Edlinger Date: Mon, 12 Feb 2018 09:28:33 +0100 Subject: [PATCH] Remove code that prints "" in hexdumps when the data block ends with SPACEs or NULs. The problem is, you can't see if the data ends with SPACE or NUL or a combination of both. This can happen for instance with openssl rsautl -decrypt -hexdump Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/5328) --- crypto/bio/b_dump.c | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/crypto/bio/b_dump.c b/crypto/bio/b_dump.c index f5391406e8..b66b9112e7 100644 --- a/crypto/bio/b_dump.c +++ b/crypto/bio/b_dump.c @@ -14,7 +14,6 @@ #include #include "bio_lcl.h" -#define TRUNCATE #define DUMP_WIDTH 16 #define DUMP_WIDTH_LESS_INDENT(i) (DUMP_WIDTH - ((i - (i > 6 ? 6 : i) + 3) / 4)) @@ -31,17 +30,10 @@ int BIO_dump_indent_cb(int (*cb) (const void *data, size_t len, void *u), { int ret = 0; char buf[288 + 1]; - int i, j, rows, trc, n; + int i, j, rows, n; unsigned char ch; int dump_width; - trc = 0; - -#ifdef TRUNCATE - for (; (len > 0) && ((s[len - 1] == ' ') || (s[len - 1] == '\0')); len--) - trc++; -#endif - if (indent < 0) indent = 0; else if (indent > 128) @@ -95,13 +87,6 @@ int BIO_dump_indent_cb(int (*cb) (const void *data, size_t len, void *u), */ ret += cb((void *)buf, n, u); } -#ifdef TRUNCATE - if (trc > 0) { - n = BIO_snprintf(buf, sizeof(buf), "%*s%04x - \n", - indent, "", len + trc); - ret += cb((void *)buf, n, u); - } -#endif return ret; } -- 2.25.1