From a01dd5ad299f042d0f2a297bc04cd69419327fac Mon Sep 17 00:00:00 2001
From: Rob Swindell <rob@synchro.net>
Date: Tue, 1 Mar 2022 20:27:17 -0800
Subject: [PATCH] Fix host name or IP address-based smtpspy.txt logging

Caught by Coverity-scan (use of uninitialized variable, 'str') :-)
---
 src/sbbs3/mailsrvr.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c
index d71ef612a5..98a5b368c2 100644
--- a/src/sbbs3/mailsrvr.c
+++ b/src/sbbs3/mailsrvr.c
@@ -3156,9 +3156,10 @@ static void smtp_thread(void* arg)
 
 	if(trashcan(&scfg,host_name,"smtpspy") 
 		|| trashcan(&scfg,host_ip,"smtpspy")) {
-		SAFEPRINTF2(path,"%s%sspy.txt", scfg.logs_dir, client.protocol);
+		SAFECOPY(str, client.protocol);
 		strlwr(str);
-		spy=fopen(str,"a");
+		SAFEPRINTF2(path,"%s%sspy.txt", scfg.logs_dir, str);
+		spy=fopen(path,"a");
 	}
 
 	/* Initialize client display */
@@ -4573,8 +4574,9 @@ static void smtp_thread(void* arg)
 			if(spy==NULL 
 				&& (trashcan(&scfg,reverse_path,"smtpspy")
 					|| trashcan(&scfg,rcpt_addr,"smtpspy"))) {
-				SAFEPRINTF2(path,"%s%sspy.txt", scfg.logs_dir, client.protocol);
-				strlwr(path);
+				SAFECOPY(str, client.protocol);
+				strlwr(str);
+				SAFEPRINTF2(path,"%s%sspy.txt", scfg.logs_dir, str);
 				spy=fopen(path,"a");
 			}
 
-- 
GitLab