From f5f890e68562e55d4bed16c454c4b4305152b296 Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Tue, 31 Jan 2023 12:18:10 +0100 Subject: Migrate to file-scoped namespaces --- .../IpBasedAccessValidationMiddleware.cs | 63 +++++++++++----------- 1 file changed, 31 insertions(+), 32 deletions(-) (limited to 'Jellyfin.Api/Middleware/IpBasedAccessValidationMiddleware.cs') diff --git a/Jellyfin.Api/Middleware/IpBasedAccessValidationMiddleware.cs b/Jellyfin.Api/Middleware/IpBasedAccessValidationMiddleware.cs index f7af91e48..f45b6b5c0 100644 --- a/Jellyfin.Api/Middleware/IpBasedAccessValidationMiddleware.cs +++ b/Jellyfin.Api/Middleware/IpBasedAccessValidationMiddleware.cs @@ -4,47 +4,46 @@ using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using Microsoft.AspNetCore.Http; -namespace Jellyfin.Api.Middleware +namespace Jellyfin.Api.Middleware; + +/// +/// Validates the IP of requests coming from local networks wrt. remote access. +/// +public class IpBasedAccessValidationMiddleware { + private readonly RequestDelegate _next; + /// - /// Validates the IP of requests coming from local networks wrt. remote access. + /// Initializes a new instance of the class. /// - public class IpBasedAccessValidationMiddleware + /// The next delegate in the pipeline. + public IpBasedAccessValidationMiddleware(RequestDelegate next) { - private readonly RequestDelegate _next; + _next = next; + } - /// - /// Initializes a new instance of the class. - /// - /// The next delegate in the pipeline. - public IpBasedAccessValidationMiddleware(RequestDelegate next) + /// + /// Executes the middleware action. + /// + /// The current HTTP context. + /// The network manager. + /// The async task. + public async Task Invoke(HttpContext httpContext, INetworkManager networkManager) + { + if (httpContext.IsLocal()) { - _next = next; + // Running locally. + await _next(httpContext).ConfigureAwait(false); + return; } - /// - /// Executes the middleware action. - /// - /// The current HTTP context. - /// The network manager. - /// The async task. - public async Task Invoke(HttpContext httpContext, INetworkManager networkManager) - { - if (httpContext.IsLocal()) - { - // Running locally. - await _next(httpContext).ConfigureAwait(false); - return; - } - - var remoteIp = httpContext.Connection.RemoteIpAddress ?? IPAddress.Loopback; - - if (!networkManager.HasRemoteAccess(remoteIp)) - { - return; - } + var remoteIp = httpContext.Connection.RemoteIpAddress ?? IPAddress.Loopback; - await _next(httpContext).ConfigureAwait(false); + if (!networkManager.HasRemoteAccess(remoteIp)) + { + return; } + + await _next(httpContext).ConfigureAwait(false); } } -- cgit v1.2.3