X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=blobdiff_plain;f=src%2Fnetbase.cpp;h=744a5b0dd070c97d5b5172429f425119e2f110b8;hp=2df8ad7ad6a859ad5ef20404f9e8c840660bb81d;hb=d1ddff624985647522d834c29ef9a484a53513bb;hpb=ce2bd54eb512e1ee9d2f9d9e760b34ff4187d94f diff --git a/src/netbase.cpp b/src/netbase.cpp index 2df8ad7..744a5b0 100644 --- a/src/netbase.cpp +++ b/src/netbase.cpp @@ -298,8 +298,10 @@ bool static Socks5(string strDest, int port, SOCKET& hSocket) case 0x03: { ret = recv(hSocket, pchRet3, 1, 0) != 1; - if (ret) + if (ret) { + closesocket(hSocket); return error("Error reading from proxy"); + } int nRecv = pchRet3[0]; ret = recv(hSocket, pchRet3, nRecv, 0) != nRecv; break; @@ -506,6 +508,7 @@ bool ConnectSocket(const CService &addrDest, SOCKET& hSocketRet, int nTimeout) return false; break; default: + closesocket(hSocket); return false; } @@ -537,7 +540,9 @@ bool ConnectSocketByName(CService &addr, SOCKET& hSocketRet, const char *pszDest switch(nameproxy.second) { default: - case 4: return false; + case 4: + closesocket(hSocket); + return false; case 5: if (!Socks5(strDest, port, hSocket)) return false;