From 1a5f82ce01bfc50acac7312c81f9c304f2669847 Mon Sep 17 00:00:00 2001 From: sta Date: Tue, 31 Aug 2021 19:36:49 +0900 Subject: [PATCH] [Modify] Polish it --- websocket-sharp/Server/WebSocketServer.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/websocket-sharp/Server/WebSocketServer.cs b/websocket-sharp/Server/WebSocketServer.cs index abe47663..d3fe45b9 100644 --- a/websocket-sharp/Server/WebSocketServer.cs +++ b/websocket-sharp/Server/WebSocketServer.cs @@ -784,34 +784,42 @@ namespace WebSocketSharp.Server { if (!authenticateClient (context)) { context.Close (HttpStatusCode.Forbidden); + return; } var uri = context.RequestUri; + if (uri == null) { context.Close (HttpStatusCode.BadRequest); + return; } if (!_allowForwardedRequest) { if (uri.Port != _port) { context.Close (HttpStatusCode.BadRequest); + return; } if (!checkHostNameForRequest (uri.DnsSafeHost)) { context.Close (HttpStatusCode.NotFound); + return; } } var path = uri.AbsolutePath; + if (path.IndexOfAny (new[] { '%', '+' }) > -1) path = HttpUtility.UrlDecode (path, Encoding.UTF8); WebSocketServiceHost host; + if (!_services.InternalTryGetServiceHost (path, out host)) { context.Close (HttpStatusCode.NotImplemented); + return; }