int ManualCloseSocket(SOCKET sock, BOOL bGraceful, BOOL bReuseAddress) { if(!bGraceful) SSO_Linger(sock, 1, 0); if(bReuseAddress) SSO_ReuseAddress(sock, bReuseAddress); return closesocket(sock); }
int ManualCloseSocket(SOCKET sock, int iShutdownFlag, BOOL bGraceful, BOOL bReuseAddress) { if(!bGraceful) SSO_Linger(sock, 1, 0); if(bReuseAddress) SSO_ReuseAddress(sock, bReuseAddress); if(iShutdownFlag != 0xFF) shutdown(sock, iShutdownFlag); return closesocket(sock); }