From 1c365418fbab2a23d603d0d1c2639d1d556c4f71 Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on Windows 11)" <rob@synchro.net>
Date: Tue, 4 Feb 2025 18:52:01 -0800
Subject: [PATCH] Addrss some new MSVC warnings

Check sscanf() result
Don't use deprecated function: inet_addr()
---
 src/sbbs3/ftpsrvr.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/sbbs3/ftpsrvr.c b/src/sbbs3/ftpsrvr.c
index 8c8021bc75..78e5f6c6a3 100644
--- a/src/sbbs3/ftpsrvr.c
+++ b/src/sbbs3/ftpsrvr.c
@@ -2864,8 +2864,7 @@ static void ctrl_thread(void* arg)
 			memcpy(&data_addr, &ftp.client_addr, ftp.client_addr_len);
 			p = cmd + 5;
 			SKIP_WHITESPACE(p);
-			if (strnicmp(cmd, "PORT ", 5) == 0) {
-				sscanf(p, "%u,%u,%u,%u,%hd,%hd", &h1, &h2, &h3, &h4, &p1, &p2);
+			if (strnicmp(cmd, "PORT ", 5) == 0 && sscanf(p, "%u,%u,%u,%u,%hd,%hd", &h1, &h2, &h3, &h4, &p1, &p2) == 6) {
 				data_addr.in.sin_family = AF_INET;
 				data_addr.in.sin_addr.s_addr = htonl((h1 << 24) | (h2 << 16) | (h3 << 8) | h4);
 				data_port = (p1 << 8) | p2;
@@ -2887,7 +2886,7 @@ static void ctrl_thread(void* arg)
 						FIND_CHAR(p, delim);
 						old_char = *p;
 						*p = 0;
-						data_addr.in.sin_addr.s_addr = inet_addr(ap);
+						data_addr.in.sin_addr.s_addr = parseIPv4Address(ap);
 						*p = old_char;
 						if (*p)
 							p++;
-- 
GitLab