From b56e5aff2b701808bd7e28d48ea40f4b41459143 Mon Sep 17 00:00:00 2001 From: Vladimir Dubrovin <3proxy@3proxy.ru> Date: Sat, 24 Oct 2026 20:56:15 +0300 Subject: [PATCH] ftppr: the data socket towards the client from the socket functions It was made with socket(), past the socket functions of the service, which the rest of its life went through. (cherry picked from commit 7718ffa) Co-Authored-By: Claude Opus 5.5 --- src/ftppr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ftppr.c b/src/ftppr.c index e6f8d42..5232820 100644 --- a/src/ftppr.c +++ b/src/ftppr.c @@ -132,7 +132,7 @@ void * ftpprchild(struct clientparam* param) { param->srv->so._closesocket(param->sostate, clidatasock); clidatasock = INVALID_SOCKET; } - if ((clidatasock=socket(SASOCK(¶m->sincl), SOCK_STREAM, IPPROTO_TCP)) == INVALID_SOCKET) {RETURN(821);} + if ((clidatasock=param->srv->so._socket(param->sostate, SASOCK(¶m->sincl), SOCK_STREAM, IPPROTO_TCP)) == INVALID_SOCKET) {RETURN(821);} if(intbindtodevice(param, clidatasock)){RETURN(822);} *SAPORT(¶m->sincl) = 0; if(bindwithrange(param, clidatasock, ¶m->sincl, param->intport)){RETURN(822);}