diff options
-rw-r--r-- | lib/ftp.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -999,8 +999,10 @@ static CURLcode ftp_state_use_port(struct connectdata *conn, result = Curl_pp_sendf(&ftpc->pp, "%s |%d|%s|%hu|", mode[fcmd], sa->sa_family == AF_INET?1:2, myhost, port); - if(result) + if(result) { + Curl_closesocket(conn, portsock); return result; + } break; } else if(PORT == fcmd) { @@ -1020,8 +1022,10 @@ static CURLcode ftp_state_use_port(struct connectdata *conn, snprintf(dest, 20, ",%d,%d", (int)(port>>8), (int)(port&0xff)); result = Curl_pp_sendf(&ftpc->pp, "%s %s", mode[fcmd], tmp); - if(result) + if(result) { + Curl_closesocket(conn, portsock); return result; + } break; } } |