diff --git a/websocket-sharp/Net/EndPointManager.cs b/websocket-sharp/Net/EndPointManager.cs index de1af7af..f0b692ba 100644 --- a/websocket-sharp/Net/EndPointManager.cs +++ b/websocket-sharp/Net/EndPointManager.cs @@ -103,6 +103,8 @@ namespace WebSocketSharp.Net EndPointListener lsnr; if (tryGetEndPointListener (addr, port, out lsnr)) { + if (lsnr.IsSecure ^ pref.IsSecure) + throw new HttpListenerException (87, "Includes an invalid scheme."); } else { lsnr = @@ -186,6 +188,9 @@ namespace WebSocketSharp.Net if (!tryGetEndPointListener (addr, port, out lsnr)) return; + if (lsnr.IsSecure ^ pref.IsSecure) + return; + lsnr.RemovePrefix (pref, listener); }