| 247 | } |
| 248 | |
| 249 | void SocketImpl::disconnect() |
| 250 | { |
| 251 | if(mListenSocket != INVALID_SOCKET) |
| 252 | { |
| 253 | close(mListenSocket); |
| 254 | mListenSocket = INVALID_SOCKET; |
| 255 | } |
| 256 | if(mSocket != INVALID_SOCKET) |
| 257 | { |
| 258 | if(mIsConnected) |
| 259 | { |
| 260 | socketSetBlockingInternal(mSocket, true); |
| 261 | shutdown(mSocket, SHUT_RDWR); |
| 262 | } |
| 263 | close(mSocket); |
| 264 | mSocket = INVALID_SOCKET; |
| 265 | } |
| 266 | mIsConnected = false; |
| 267 | mListenMode = false; |
| 268 | mPort = 0; |
| 269 | mHost = NULL; |
| 270 | } |
| 271 | |
| 272 | bool SocketImpl::nonBlockingTimeout() const |
| 273 | { |
no test coverage detected