mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-14 02:26:55 -07:00
Merge pull request from GHSA-28j3-84m7-gpjp
This commit is contained in:
parent
f94e8ab153
commit
b8a8f029d8
1 changed files with 16 additions and 8 deletions
|
@ -44,25 +44,33 @@ namespace Ombi.Controllers.V2
|
|||
}
|
||||
|
||||
[HttpGet("logs/{logFileName}")]
|
||||
public async Task<IActionResult> ReadLogFile(string logFileName, CancellationToken token)
|
||||
public async Task<IActionResult> ReadLogFile(string logFileName)
|
||||
{
|
||||
var logFile = Path.Combine(string.IsNullOrEmpty(Ombi.Helpers.StartupSingleton.Instance.StoragePath) ? _hosting.ContentRootPath : Helpers.StartupSingleton.Instance.StoragePath, "Logs", logFileName);
|
||||
using (var fs = new FileStream(logFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
|
||||
using (StreamReader reader = new StreamReader(fs))
|
||||
var logsFolder = Path.Combine(string.IsNullOrEmpty(Ombi.Helpers.StartupSingleton.Instance.StoragePath) ? _hosting.ContentRootPath : Helpers.StartupSingleton.Instance.StoragePath, "Logs");
|
||||
var files = Directory.EnumerateFiles(logsFolder);
|
||||
var matchingFile = files.FirstOrDefault(x => Path.GetFileName(x).Equals(logFileName));
|
||||
if (matchingFile != null)
|
||||
{
|
||||
using var fs = new FileStream(matchingFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
|
||||
using StreamReader reader = new(fs);
|
||||
return Ok(await reader.ReadToEndAsync());
|
||||
}
|
||||
return NotFound();
|
||||
}
|
||||
|
||||
[HttpGet("logs/download/{logFileName}")]
|
||||
public IActionResult Download(string logFileName, CancellationToken token)
|
||||
public IActionResult Download(string logFileName)
|
||||
{
|
||||
var logFile = Path.Combine(string.IsNullOrEmpty(Ombi.Helpers.StartupSingleton.Instance.StoragePath) ? _hosting.ContentRootPath : Helpers.StartupSingleton.Instance.StoragePath, "Logs", logFileName);
|
||||
using (var fs = new FileStream(logFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
|
||||
using (StreamReader reader = new StreamReader(fs))
|
||||
var logsFolder = Path.Combine(string.IsNullOrEmpty(Ombi.Helpers.StartupSingleton.Instance.StoragePath) ? _hosting.ContentRootPath : Helpers.StartupSingleton.Instance.StoragePath, "Logs");
|
||||
var files = Directory.EnumerateFiles(logsFolder);
|
||||
var matchingFile = files.FirstOrDefault(x => Path.GetFileName(x).Equals(logFileName));
|
||||
if (matchingFile != null)
|
||||
{
|
||||
using var fs = new FileStream(matchingFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
|
||||
using StreamReader reader = new(fs);
|
||||
return File(reader.BaseStream, "application/octet-stream", logFileName);
|
||||
}
|
||||
return NotFound();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue