From 430f50363dcd4db76e06906dda0207243d92859c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Deuc=D0=B5?= <shurd@sasktel.net>
Date: Sat, 4 Jan 2025 03:48:25 -0500
Subject: [PATCH] So, Coverity knows that won't happen, so that just creates a
 new issue

Try untainting it in recv_hex... if that doesn't work, I'll just
have to ignore it I guess.
---
 src/sbbs3/zmodem.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/sbbs3/zmodem.c b/src/sbbs3/zmodem.c
index d727a139f9..8cf10314c6 100644
--- a/src/sbbs3/zmodem.c
+++ b/src/sbbs3/zmodem.c
@@ -1049,8 +1049,6 @@ int zmodem_recv_nibble(zmodem_t* zm)
 		c -= '0';
 	}
 
-	if (c < 0 || c > 15)
-		return -1;
 	return c;
 }
 
@@ -1063,9 +1061,13 @@ int zmodem_recv_hex(zmodem_t* zm)
 	n1 = zmodem_recv_nibble(zm);
 	if (n1 < 0)
 		return n1;
+	if (n1 > 15)
+		return -1;
 	n0 = zmodem_recv_nibble(zm);
 	if(n0 < 0)
 		return n0;
+	if (n1 > 15)
+		return -1;
 
 	ret = (n1 << 4) | n0;
 
-- 
GitLab