Browse Source

Updated with latest bug fiz for leaking sockets when a SYNC server is not available.

Built 32bitdll and 64bitdll, tested by building and running SNFMultTest from the command line.
Built SNFMultiSDK_3.1.zip.

git-svn-id: https://svn.microneil.com/svn/PKG-SNF-SDK-WIN/trunk@17 7d91e7c8-5a61-404e-b06a-95855fde9112
master
adeniz 12 years ago
parent
commit
87a9d53bf7

BIN
32bitDll/snfmulti.dll View File


BIN
32bitDll/vs2008_snfmulti.exp View File


BIN
32bitDll/vs2008_snfmulti.lib View File


BIN
64bitDll/snfmulti.dll View File


BIN
64bitDll/vs2008_snfmulti.exp View File


BIN
64bitDll/vs2008_snfmulti.lib View File


BIN
SNFMultiSDK_Windows_3.1.zip View File


BIN
SNFMultiSDK_Windows_3.1/32bitDll/snfmulti.dll View File


BIN
SNFMultiSDK_Windows_3.1/32bitDll/vs2008_snfmulti.exp View File


BIN
SNFMultiSDK_Windows_3.1/32bitDll/vs2008_snfmulti.lib View File


BIN
SNFMultiSDK_Windows_3.1/64bitDll/snfmulti.dll View File


BIN
SNFMultiSDK_Windows_3.1/64bitDll/vs2008_snfmulti.exp View File


BIN
SNFMultiSDK_Windows_3.1/64bitDll/vs2008_snfmulti.lib View File


+ 7
- 5
SNFMultiSDK_Windows_3.1/CodeDweller/networking.inline.hpp View File

} }


inline Socket::~Socket() { // When shutting down, be sure inline Socket::~Socket() { // When shutting down, be sure
if(isOpen()) close(); // any open socket is closed.
if(INVALID_SOCKET != Handle) { // any open socket is closed without
Network.closeSocket(Handle); // throwing any exceptions.
}
} }


inline void Socket::close() { // When we close, inline void Socket::close() { // When we close,
} }


inline TCPClient::~TCPClient() { // When destroying a TCPClient inline TCPClient::~TCPClient() { // When destroying a TCPClient
if(isOpen()) close(); // Close when being destroyed.
try{ if(isOpen()) close(); } catch(...) {} // silently close any open connections.
} }


inline void TCPClient::open() { // We provide open() as unsupported. inline void TCPClient::open() { // We provide open() as unsupported.
//// class TCPHost ///////////////////////////////////////////////////////////// //// class TCPHost /////////////////////////////////////////////////////////////


inline TCPHost::~TCPHost() { // When destroying a TCPHost inline TCPHost::~TCPHost() { // When destroying a TCPHost
if(isOpen()) close(); // Close when being destroyed.
try{ if(isOpen()) close(); } catch(...) {} // silently close any open connection.
} }


inline bool TCPHost::ReadBufferIsEmpty() { // True if the ReadBuffer is empty. inline bool TCPHost::ReadBufferIsEmpty() { // True if the ReadBuffer is empty.


//// class TCPListener ///////////////////////////////////////////////////////// //// class TCPListener /////////////////////////////////////////////////////////


inline TCPListener::~TCPListener() { // Close when deleting.
close();
inline TCPListener::~TCPListener() { // When destroying a TCPListener
try{ close(); } catch(...) {} // silently close if not already done.
} }

Loading…
Cancel
Save