aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations')
-rw-r--r--MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs9
-rw-r--r--MediaBrowser.Server.Implementations/WebSocket/AlchemyServer.cs12
2 files changed, 19 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs b/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs
index 6cddcdf2e..1a56005dc 100644
--- a/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs
+++ b/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Common;
+using System.Net.Sockets;
+using MediaBrowser.Common;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Configuration;
@@ -169,6 +170,12 @@ namespace MediaBrowser.Server.Implementations.ServerManager
HttpServer.EnableHttpRequestLogging = ConfigurationManager.Configuration.EnableHttpLevelLogging;
HttpServer.Start(_applicationHost.HttpServerUrlPrefix);
}
+ catch (SocketException ex)
+ {
+ _logger.ErrorException("The http server is unable to start due to a Socket error. This can occasionally happen when the operating system takes longer than usual to release the IP bindings from the previous session. This can take up to five minutes. Please try waiting or rebooting the system.", ex);
+
+ throw;
+ }
catch (HttpListenerException ex)
{
_logger.ErrorException("Error starting Http Server", ex);
diff --git a/MediaBrowser.Server.Implementations/WebSocket/AlchemyServer.cs b/MediaBrowser.Server.Implementations/WebSocket/AlchemyServer.cs
index 797c4a80c..6649fd197 100644
--- a/MediaBrowser.Server.Implementations/WebSocket/AlchemyServer.cs
+++ b/MediaBrowser.Server.Implementations/WebSocket/AlchemyServer.cs
@@ -4,6 +4,7 @@ using MediaBrowser.Common.Net;
using MediaBrowser.Model.Logging;
using System;
using System.Net;
+using System.Net.Sockets;
namespace MediaBrowser.Server.Implementations.WebSocket
{
@@ -60,7 +61,16 @@ namespace MediaBrowser.Server.Implementations.WebSocket
TimeOut = TimeSpan.FromHours(12)
};
- WebSocketServer.Start();
+ try
+ {
+ WebSocketServer.Start();
+ }
+ catch (SocketException ex)
+ {
+ _logger.ErrorException("The web socket server is unable to start on port {0} due to a Socket error. This can occasionally happen when the operating system takes longer than usual to release the IP bindings from the previous session. This can take up to five minutes. Please try waiting or rebooting the system.", ex, portNumber);
+
+ throw;
+ }
Port = portNumber;