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