diff options
Diffstat (limited to 'SocketHttpListener')
| -rw-r--r-- | SocketHttpListener/Net/EndPointListener.cs | 9 | ||||
| -rw-r--r-- | SocketHttpListener/Net/HttpConnection.cs | 8 |
2 files changed, 16 insertions, 1 deletions
diff --git a/SocketHttpListener/Net/EndPointListener.cs b/SocketHttpListener/Net/EndPointListener.cs index 2b1479e42..48c0ae7cb 100644 --- a/SocketHttpListener/Net/EndPointListener.cs +++ b/SocketHttpListener/Net/EndPointListener.cs @@ -93,6 +93,15 @@ namespace SocketHttpListener.Net } } + try + { + sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true); + } + catch (SocketException) + { + // This is not supported on all operating systems (qnap) + } + sock.Bind(endpoint); // This is the number TcpListener uses. diff --git a/SocketHttpListener/Net/HttpConnection.cs b/SocketHttpListener/Net/HttpConnection.cs index 4e8158964..05576ea1e 100644 --- a/SocketHttpListener/Net/HttpConnection.cs +++ b/SocketHttpListener/Net/HttpConnection.cs @@ -528,7 +528,13 @@ namespace SocketHttpListener.Net finally { if (s != null) - s.Close(); + { + try + { + s.Close(); + } + catch { } + } } Unbind(); RemoveConnection(); |
