diff options
| author | gnattu <gnattu@users.noreply.github.com> | 2024-09-18 21:25:28 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-18 07:25:28 -0600 |
| commit | 569a41fc2a518672684b28a106241ecd8c9ceb67 (patch) | |
| tree | e93d84643751ec762c379be3342f97eec7cfba5e /Jellyfin.Api/Controllers/SessionController.cs | |
| parent | 97d2f778f8490d12d4171acfcfd873a36587da8d (diff) | |
Don't expose hwaccel type for non-admin (#12663)
Diffstat (limited to 'Jellyfin.Api/Controllers/SessionController.cs')
| -rw-r--r-- | Jellyfin.Api/Controllers/SessionController.cs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Jellyfin.Api/Controllers/SessionController.cs b/Jellyfin.Api/Controllers/SessionController.cs index 60de66ab0..942bdeb9e 100644 --- a/Jellyfin.Api/Controllers/SessionController.cs +++ b/Jellyfin.Api/Controllers/SessionController.cs @@ -16,6 +16,7 @@ using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Session; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; @@ -66,6 +67,7 @@ public class SessionController : BaseJellyfinApiController [FromQuery] int? activeWithinSeconds) { var result = _sessionManager.Sessions; + var isRequestingFromAdmin = User.IsInRole(UserRoles.Administrator); if (!string.IsNullOrEmpty(deviceId)) { @@ -106,7 +108,7 @@ public class SessionController : BaseJellyfinApiController return true; }); } - else if (!User.IsInRole(UserRoles.Administrator)) + else if (!isRequestingFromAdmin) { // Request isn't from administrator, limit to "own" sessions. result = result.Where(i => i.UserId.IsEmpty() || i.ContainsUser(User.GetUserId())); @@ -118,6 +120,16 @@ public class SessionController : BaseJellyfinApiController result = result.Where(i => i.LastActivityDate >= minActiveDate); } + // Request isn't from administrator, don't report acceleration type. + if (!isRequestingFromAdmin) + { + result = result.Select(r => + { + r.TranscodingInfo.HardwareAccelerationType = HardwareAccelerationType.none; + return r; + }); + } + return Ok(result); } |
