aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Services/FspSrv
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/Services/FspSrv')
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/DirectoryEntry.cs18
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/FileSystemType.cs2
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/IDirectory.cs70
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/IFile.cs70
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/IFileSystem.cs246
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs238
-rw-r--r--Ryujinx.HLE/HOS/Services/FspSrv/IStorage.cs36
7 files changed, 342 insertions, 338 deletions
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/DirectoryEntry.cs b/Ryujinx.HLE/HOS/Services/FspSrv/DirectoryEntry.cs
index bdb0c1cd..74ebddc2 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/DirectoryEntry.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/DirectoryEntry.cs
@@ -1,17 +1,21 @@
-namespace Ryujinx.HLE.HOS.Services.FspSrv
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Ryujinx.HLE.HOS.Services.FspSrv
{
public struct DirectoryEntry
{
- public string Path { get; }
- public long Size { get; }
+ public string Path { get; private set; }
+ public long Size { get; private set; }
public DirectoryEntryType EntryType { get; set; }
- public DirectoryEntry(string path, DirectoryEntryType directoryEntryType, long size = 0)
+ public DirectoryEntry(string Path, DirectoryEntryType DirectoryEntryType, long Size = 0)
{
- Path = path;
- EntryType = directoryEntryType;
- Size = size;
+ this.Path = Path;
+ EntryType = DirectoryEntryType;
+ this.Size = Size;
}
}
}
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/FileSystemType.cs b/Ryujinx.HLE/HOS/Services/FspSrv/FileSystemType.cs
index 20fc9bdc..2fd59673 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/FileSystemType.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/FileSystemType.cs
@@ -1,6 +1,6 @@
namespace Ryujinx.HLE.HOS.Services.FspSrv
{
- enum FileSystemType
+ enum FileSystemType : int
{
Logo = 2,
ContentControl = 3,
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IDirectory.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IDirectory.cs
index e5dcd8b1..c964eecb 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/IDirectory.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/IDirectory.cs
@@ -11,88 +11,88 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{
private const int DirectoryEntrySize = 0x310;
- private Dictionary<int, ServiceProcessRequest> _commands;
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
- public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
- private List<DirectoryEntry> _directoryEntries;
+ private List<DirectoryEntry> DirectoryEntries;
- private int _currentItemIndex;
+ private int CurrentItemIndex;
public event EventHandler<EventArgs> Disposed;
- public string DirectoryPath { get; }
+ public string DirectoryPath { get; private set; }
- private IFileSystemProvider _provider;
+ private IFileSystemProvider Provider;
- public IDirectory(string directoryPath, int flags, IFileSystemProvider provider)
+ public IDirectory(string DirectoryPath, int Flags, IFileSystemProvider Provider)
{
- _commands = new Dictionary<int, ServiceProcessRequest>
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, Read },
{ 1, GetEntryCount }
};
- _provider = provider;
- DirectoryPath = directoryPath;
+ this.Provider = Provider;
+ this.DirectoryPath = DirectoryPath;
- _directoryEntries = new List<DirectoryEntry>();
+ DirectoryEntries = new List<DirectoryEntry>();
- if ((flags & 1) != 0)
+ if ((Flags & 1) != 0)
{
- _directoryEntries.AddRange(provider.GetDirectories(directoryPath));
+ DirectoryEntries.AddRange(Provider.GetDirectories(DirectoryPath));
}
- if ((flags & 2) != 0)
+ if ((Flags & 2) != 0)
{
- _directoryEntries.AddRange(provider.GetFiles(directoryPath));
+ DirectoryEntries.AddRange(Provider.GetFiles(DirectoryPath));
}
- _currentItemIndex = 0;
+ CurrentItemIndex = 0;
}
// Read() -> (u64 count, buffer<nn::fssrv::sf::IDirectoryEntry, 6, 0> entries)
- public long Read(ServiceCtx context)
+ public long Read(ServiceCtx Context)
{
- long bufferPosition = context.Request.ReceiveBuff[0].Position;
- long bufferLen = context.Request.ReceiveBuff[0].Size;
+ long BufferPosition = Context.Request.ReceiveBuff[0].Position;
+ long BufferLen = Context.Request.ReceiveBuff[0].Size;
- int maxReadCount = (int)(bufferLen / DirectoryEntrySize);
+ int MaxReadCount = (int)(BufferLen / DirectoryEntrySize);
- int count = Math.Min(_directoryEntries.Count - _currentItemIndex, maxReadCount);
+ int Count = Math.Min(DirectoryEntries.Count - CurrentItemIndex, MaxReadCount);
- for (int index = 0; index < count; index++)
+ for (int Index = 0; Index < Count; Index++)
{
- long position = bufferPosition + index * DirectoryEntrySize;
+ long Position = BufferPosition + Index * DirectoryEntrySize;
- WriteDirectoryEntry(context, position, _directoryEntries[_currentItemIndex++]);
+ WriteDirectoryEntry(Context, Position, DirectoryEntries[CurrentItemIndex++]);
}
- context.ResponseData.Write((long)count);
+ Context.ResponseData.Write((long)Count);
return 0;
}
- private void WriteDirectoryEntry(ServiceCtx context, long position, DirectoryEntry entry)
+ private void WriteDirectoryEntry(ServiceCtx Context, long Position, DirectoryEntry Entry)
{
- for (int offset = 0; offset < 0x300; offset += 8)
+ for (int Offset = 0; Offset < 0x300; Offset += 8)
{
- context.Memory.WriteInt64(position + offset, 0);
+ Context.Memory.WriteInt64(Position + Offset, 0);
}
- byte[] nameBuffer = Encoding.UTF8.GetBytes(Path.GetFileName(entry.Path));
+ byte[] NameBuffer = Encoding.UTF8.GetBytes(Path.GetFileName(Entry.Path));
- context.Memory.WriteBytes(position, nameBuffer);
+ Context.Memory.WriteBytes(Position, NameBuffer);
- context.Memory.WriteInt32(position + 0x300, 0); //Padding?
- context.Memory.WriteInt32(position + 0x304, (byte)entry.EntryType);
- context.Memory.WriteInt64(position + 0x308, entry.Size);
+ Context.Memory.WriteInt32(Position + 0x300, 0); //Padding?
+ Context.Memory.WriteInt32(Position + 0x304, (byte)Entry.EntryType);
+ Context.Memory.WriteInt64(Position + 0x308, Entry.Size);
}
// GetEntryCount() -> u64
- public long GetEntryCount(ServiceCtx context)
+ public long GetEntryCount(ServiceCtx Context)
{
- context.ResponseData.Write((long)_directoryEntries.Count);
+ Context.ResponseData.Write((long)DirectoryEntries.Count);
return 0;
}
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IFile.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IFile.cs
index 03cfad99..9bf152c4 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/IFile.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/IFile.cs
@@ -7,19 +7,19 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{
class IFile : IpcService, IDisposable
{
- private Dictionary<int, ServiceProcessRequest> _commands;
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
- public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
- private Stream _baseStream;
+ private Stream BaseStream;
public event EventHandler<EventArgs> Disposed;
- public string HostPath { get; }
+ public string HostPath { get; private set; }
- public IFile(Stream baseStream, string hostPath)
+ public IFile(Stream BaseStream, string HostPath)
{
- _commands = new Dictionary<int, ServiceProcessRequest>
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, Read },
{ 1, Write },
@@ -28,71 +28,71 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{ 4, GetSize }
};
- _baseStream = baseStream;
- HostPath = hostPath;
+ this.BaseStream = BaseStream;
+ this.HostPath = HostPath;
}
// Read(u32, u64 offset, u64 size) -> (u64 out_size, buffer<u8, 0x46, 0> out_buf)
- public long Read(ServiceCtx context)
+ public long Read(ServiceCtx Context)
{
- long position = context.Request.ReceiveBuff[0].Position;
+ long Position = Context.Request.ReceiveBuff[0].Position;
- long zero = context.RequestData.ReadInt64();
- long offset = context.RequestData.ReadInt64();
- long size = context.RequestData.ReadInt64();
+ long Zero = Context.RequestData.ReadInt64();
+ long Offset = Context.RequestData.ReadInt64();
+ long Size = Context.RequestData.ReadInt64();
- byte[] data = new byte[size];
+ byte[] Data = new byte[Size];
- _baseStream.Seek(offset, SeekOrigin.Begin);
+ BaseStream.Seek(Offset, SeekOrigin.Begin);
- int readSize = _baseStream.Read(data, 0, (int)size);
+ int ReadSize = BaseStream.Read(Data, 0, (int)Size);
- context.Memory.WriteBytes(position, data);
+ Context.Memory.WriteBytes(Position, Data);
- context.ResponseData.Write((long)readSize);
+ Context.ResponseData.Write((long)ReadSize);
return 0;
}
// Write(u32, u64 offset, u64 size, buffer<u8, 0x45, 0>)
- public long Write(ServiceCtx context)
+ public long Write(ServiceCtx Context)
{
- long position = context.Request.SendBuff[0].Position;
+ long Position = Context.Request.SendBuff[0].Position;
- long zero = context.RequestData.ReadInt64();
- long offset = context.RequestData.ReadInt64();
- long size = context.RequestData.ReadInt64();
+ long Zero = Context.RequestData.ReadInt64();
+ long Offset = Context.RequestData.ReadInt64();
+ long Size = Context.RequestData.ReadInt64();
- byte[] data = context.Memory.ReadBytes(position, size);
+ byte[] Data = Context.Memory.ReadBytes(Position, Size);
- _baseStream.Seek(offset, SeekOrigin.Begin);
- _baseStream.Write(data, 0, (int)size);
+ BaseStream.Seek(Offset, SeekOrigin.Begin);
+ BaseStream.Write(Data, 0, (int)Size);
return 0;
}
// Flush()
- public long Flush(ServiceCtx context)
+ public long Flush(ServiceCtx Context)
{
- _baseStream.Flush();
+ BaseStream.Flush();
return 0;
}
// SetSize(u64 size)
- public long SetSize(ServiceCtx context)
+ public long SetSize(ServiceCtx Context)
{
- long size = context.RequestData.ReadInt64();
+ long Size = Context.RequestData.ReadInt64();
- _baseStream.SetLength(size);
+ BaseStream.SetLength(Size);
return 0;
}
// GetSize() -> u64 fileSize
- public long GetSize(ServiceCtx context)
+ public long GetSize(ServiceCtx Context)
{
- context.ResponseData.Write(_baseStream.Length);
+ Context.ResponseData.Write(BaseStream.Length);
return 0;
}
@@ -104,9 +104,9 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
protected virtual void Dispose(bool disposing)
{
- if (disposing && _baseStream != null)
+ if (disposing && BaseStream != null)
{
- _baseStream.Dispose();
+ BaseStream.Dispose();
Disposed?.Invoke(this, EventArgs.Empty);
}
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystem.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystem.cs
index 9e294460..edcdfa58 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystem.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystem.cs
@@ -11,19 +11,19 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{
class IFileSystem : IpcService
{
- private Dictionary<int, ServiceProcessRequest> _commands;
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
- public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
- private HashSet<string> _openPaths;
+ private HashSet<string> OpenPaths;
- private string _path;
+ private string Path;
- private IFileSystemProvider _provider;
+ private IFileSystemProvider Provider;
- public IFileSystem(string path, IFileSystemProvider provider)
+ public IFileSystem(string Path, IFileSystemProvider Provider)
{
- _commands = new Dictionary<int, ServiceProcessRequest>
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, CreateFile },
{ 1, DeleteFile },
@@ -38,196 +38,196 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{ 10, Commit },
{ 11, GetFreeSpaceSize },
{ 12, GetTotalSpaceSize },
- { 13, CleanDirectoryRecursively }
+ { 13, CleanDirectoryRecursively },
//{ 14, GetFileTimeStampRaw }
};
- _openPaths = new HashSet<string>();
+ OpenPaths = new HashSet<string>();
- _path = path;
- _provider = provider;
+ this.Path = Path;
+ this.Provider = Provider;
}
// CreateFile(u32 mode, u64 size, buffer<bytes<0x301>, 0x19, 0x301> path)
- public long CreateFile(ServiceCtx context)
+ public long CreateFile(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- long mode = context.RequestData.ReadInt64();
- int size = context.RequestData.ReadInt32();
+ long Mode = Context.RequestData.ReadInt64();
+ int Size = Context.RequestData.ReadInt32();
- string fileName = _provider.GetFullPath(name);
+ string FileName = Provider.GetFullPath(Name);
- if (fileName == null)
+ if (FileName == null)
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (_provider.FileExists(fileName))
+ if (Provider.FileExists(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyExists);
}
- if (IsPathAlreadyInUse(fileName))
+ if (IsPathAlreadyInUse(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- return _provider.CreateFile(fileName, size);
+ return Provider.CreateFile(FileName, Size);
}
// DeleteFile(buffer<bytes<0x301>, 0x19, 0x301> path)
- public long DeleteFile(ServiceCtx context)
+ public long DeleteFile(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string fileName = _provider.GetFullPath(name);
+ string FileName = Provider.GetFullPath(Name);
- if (!_provider.FileExists(fileName))
+ if (!Provider.FileExists(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (IsPathAlreadyInUse(fileName))
+ if (IsPathAlreadyInUse(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- return _provider.DeleteFile(fileName);
+ return Provider.DeleteFile(FileName);
}
// CreateDirectory(buffer<bytes<0x301>, 0x19, 0x301> path)
- public long CreateDirectory(ServiceCtx context)
+ public long CreateDirectory(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string dirName = _provider.GetFullPath(name);
+ string DirName = Provider.GetFullPath(Name);
- if (dirName == null)
+ if (DirName == null)
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (_provider.DirectoryExists(dirName))
+ if (Provider.DirectoryExists(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyExists);
}
- if (IsPathAlreadyInUse(dirName))
+ if (IsPathAlreadyInUse(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- _provider.CreateDirectory(dirName);
+ Provider.CreateDirectory(DirName);
return 0;
}
// DeleteDirectory(buffer<bytes<0x301>, 0x19, 0x301> path)
- public long DeleteDirectory(ServiceCtx context)
+ public long DeleteDirectory(ServiceCtx Context)
{
- return DeleteDirectory(context, false);
+ return DeleteDirectory(Context, false);
}
// DeleteDirectoryRecursively(buffer<bytes<0x301>, 0x19, 0x301> path)
- public long DeleteDirectoryRecursively(ServiceCtx context)
+ public long DeleteDirectoryRecursively(ServiceCtx Context)
{
- return DeleteDirectory(context, true);
+ return DeleteDirectory(Context, true);
}
- private long DeleteDirectory(ServiceCtx context, bool recursive)
+ private long DeleteDirectory(ServiceCtx Context, bool Recursive)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string dirName = _provider.GetFullPath(name);
+ string DirName = Provider.GetFullPath(Name);
- if (!Directory.Exists(dirName))
+ if (!Directory.Exists(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (IsPathAlreadyInUse(dirName))
+ if (IsPathAlreadyInUse(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- _provider.DeleteDirectory(dirName, recursive);
+ Provider.DeleteDirectory(DirName, Recursive);
return 0;
}
// RenameFile(buffer<bytes<0x301>, 0x19, 0x301> oldPath, buffer<bytes<0x301>, 0x19, 0x301> newPath)
- public long RenameFile(ServiceCtx context)
+ public long RenameFile(ServiceCtx Context)
{
- string oldName = ReadUtf8String(context, 0);
- string newName = ReadUtf8String(context, 1);
+ string OldName = ReadUtf8String(Context, 0);
+ string NewName = ReadUtf8String(Context, 1);
- string oldFileName = _provider.GetFullPath(oldName);
- string newFileName = _provider.GetFullPath(newName);
+ string OldFileName = Provider.GetFullPath(OldName);
+ string NewFileName = Provider.GetFullPath(NewName);
- if (_provider.FileExists(oldFileName))
+ if (Provider.FileExists(OldFileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (_provider.FileExists(newFileName))
+ if (Provider.FileExists(NewFileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyExists);
}
- if (IsPathAlreadyInUse(oldFileName))
+ if (IsPathAlreadyInUse(OldFileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- return _provider.RenameFile(oldFileName, newFileName);
+ return Provider.RenameFile(OldFileName, NewFileName);
}
// RenameDirectory(buffer<bytes<0x301>, 0x19, 0x301> oldPath, buffer<bytes<0x301>, 0x19, 0x301> newPath)
- public long RenameDirectory(ServiceCtx context)
+ public long RenameDirectory(ServiceCtx Context)
{
- string oldName = ReadUtf8String(context, 0);
- string newName = ReadUtf8String(context, 1);
+ string OldName = ReadUtf8String(Context, 0);
+ string NewName = ReadUtf8String(Context, 1);
- string oldDirName = _provider.GetFullPath(oldName);
- string newDirName = _provider.GetFullPath(newName);
+ string OldDirName = Provider.GetFullPath(OldName);
+ string NewDirName = Provider.GetFullPath(NewName);
- if (!_provider.DirectoryExists(oldDirName))
+ if (!Provider.DirectoryExists(OldDirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (!_provider.DirectoryExists(newDirName))
+ if (!Provider.DirectoryExists(NewDirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyExists);
}
- if (IsPathAlreadyInUse(oldDirName))
+ if (IsPathAlreadyInUse(OldDirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- return _provider.RenameDirectory(oldDirName, newDirName);
+ return Provider.RenameDirectory(OldDirName, NewDirName);
}
// GetEntryType(buffer<bytes<0x301>, 0x19, 0x301> path) -> nn::fssrv::sf::DirectoryEntryType
- public long GetEntryType(ServiceCtx context)
+ public long GetEntryType(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string fileName = _provider.GetFullPath(name);
+ string FileName = Provider.GetFullPath(Name);
- if (_provider.FileExists(fileName))
+ if (Provider.FileExists(FileName))
{
- context.ResponseData.Write(1);
+ Context.ResponseData.Write(1);
}
- else if (_provider.DirectoryExists(fileName))
+ else if (Provider.DirectoryExists(FileName))
{
- context.ResponseData.Write(0);
+ Context.ResponseData.Write(0);
}
else
{
- context.ResponseData.Write(0);
+ Context.ResponseData.Write(0);
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
@@ -236,167 +236,167 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
}
// OpenFile(u32 mode, buffer<bytes<0x301>, 0x19, 0x301> path) -> object<nn::fssrv::sf::IFile> file
- public long OpenFile(ServiceCtx context)
+ public long OpenFile(ServiceCtx Context)
{
- int filterFlags = context.RequestData.ReadInt32();
+ int FilterFlags = Context.RequestData.ReadInt32();
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string fileName = _provider.GetFullPath(name);
+ string FileName = Provider.GetFullPath(Name);
- if (!_provider.FileExists(fileName))
+ if (!Provider.FileExists(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (IsPathAlreadyInUse(fileName))
+ if (IsPathAlreadyInUse(FileName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- long error = _provider.OpenFile(fileName, out IFile fileInterface);
+ long Error = Provider.OpenFile(FileName, out IFile FileInterface);
- if (error == 0)
+ if (Error == 0)
{
- fileInterface.Disposed += RemoveFileInUse;
+ FileInterface.Disposed += RemoveFileInUse;
- lock (_openPaths)
+ lock (OpenPaths)
{
- _openPaths.Add(fileName);
+ OpenPaths.Add(FileName);
}
- MakeObject(context, fileInterface);
+ MakeObject(Context, FileInterface);
return 0;
}
- return error;
+ return Error;
}
// OpenDirectory(u32 filter_flags, buffer<bytes<0x301>, 0x19, 0x301> path) -> object<nn::fssrv::sf::IDirectory> directory
- public long OpenDirectory(ServiceCtx context)
+ public long OpenDirectory(ServiceCtx Context)
{
- int filterFlags = context.RequestData.ReadInt32();
+ int FilterFlags = Context.RequestData.ReadInt32();
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string dirName = _provider.GetFullPath(name);
+ string DirName = Provider.GetFullPath(Name);
- if (!_provider.DirectoryExists(dirName))
+ if (!Provider.DirectoryExists(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (IsPathAlreadyInUse(dirName))
+ if (IsPathAlreadyInUse(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- long error = _provider.OpenDirectory(dirName, filterFlags, out IDirectory dirInterface);
+ long Error = Provider.OpenDirectory(DirName, FilterFlags, out IDirectory DirInterface);
- if (error == 0)
+ if (Error == 0)
{
- dirInterface.Disposed += RemoveDirectoryInUse;
+ DirInterface.Disposed += RemoveDirectoryInUse;
- lock (_openPaths)
+ lock (OpenPaths)
{
- _openPaths.Add(dirName);
+ OpenPaths.Add(DirName);
}
- MakeObject(context, dirInterface);
+ MakeObject(Context, DirInterface);
}
- return error;
+ return Error;
}
// Commit()
- public long Commit(ServiceCtx context)
+ public long Commit(ServiceCtx Context)
{
return 0;
}
// GetFreeSpaceSize(buffer<bytes<0x301>, 0x19, 0x301> path) -> u64 totalFreeSpace
- public long GetFreeSpaceSize(ServiceCtx context)
+ public long GetFreeSpaceSize(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- context.ResponseData.Write(_provider.GetFreeSpace(context));
+ Context.ResponseData.Write(Provider.GetFreeSpace(Context));
return 0;
}
// GetTotalSpaceSize(buffer<bytes<0x301>, 0x19, 0x301> path) -> u64 totalSize
- public long GetTotalSpaceSize(ServiceCtx context)
+ public long GetTotalSpaceSize(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- context.ResponseData.Write(_provider.GetFreeSpace(context));
+ Context.ResponseData.Write(Provider.GetFreeSpace(Context));
return 0;
}
// CleanDirectoryRecursively(buffer<bytes<0x301>, 0x19, 0x301> path)
- public long CleanDirectoryRecursively(ServiceCtx context)
+ public long CleanDirectoryRecursively(ServiceCtx Context)
{
- string name = ReadUtf8String(context);
+ string Name = ReadUtf8String(Context);
- string dirName = _provider.GetFullPath(name);
+ string DirName = Provider.GetFullPath(Name);
- if (!_provider.DirectoryExists(dirName))
+ if (!Provider.DirectoryExists(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- if (IsPathAlreadyInUse(dirName))
+ if (IsPathAlreadyInUse(DirName))
{
return MakeError(ErrorModule.Fs, FsErr.PathAlreadyInUse);
}
- foreach (DirectoryEntry entry in _provider.GetEntries(dirName))
+ foreach (DirectoryEntry Entry in Provider.GetEntries(DirName))
{
- if (_provider.DirectoryExists(entry.Path))
+ if (Provider.DirectoryExists(Entry.Path))
{
- _provider.DeleteDirectory(entry.Path, true);
+ Provider.DeleteDirectory(Entry.Path, true);
}
- else if (_provider.FileExists(entry.Path))
+ else if (Provider.FileExists(Entry.Path))
{
- _provider.DeleteFile(entry.Path);
+ Provider.DeleteFile(Entry.Path);
}
}
return 0;
}
- private bool IsPathAlreadyInUse(string path)
+ private bool IsPathAlreadyInUse(string Path)
{
- lock (_openPaths)
+ lock (OpenPaths)
{
- return _openPaths.Contains(path);
+ return OpenPaths.Contains(Path);
}
}
private void RemoveFileInUse(object sender, EventArgs e)
{
- IFile fileInterface = (IFile)sender;
+ IFile FileInterface = (IFile)sender;
- lock (_openPaths)
+ lock (OpenPaths)
{
- fileInterface.Disposed -= RemoveFileInUse;
+ FileInterface.Disposed -= RemoveFileInUse;
- _openPaths.Remove(fileInterface.HostPath);
+ OpenPaths.Remove(FileInterface.HostPath);
}
}
private void RemoveDirectoryInUse(object sender, EventArgs e)
{
- IDirectory dirInterface = (IDirectory)sender;
+ IDirectory DirInterface = (IDirectory)sender;
- lock (_openPaths)
+ lock (OpenPaths)
{
- dirInterface.Disposed -= RemoveDirectoryInUse;
+ DirInterface.Disposed -= RemoveDirectoryInUse;
- _openPaths.Remove(dirInterface.DirectoryPath);
+ OpenPaths.Remove(DirInterface.DirectoryPath);
}
}
}
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs
index 8764792c..0fc1eb80 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/IFileSystemProxy.cs
@@ -14,13 +14,13 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{
class IFileSystemProxy : IpcService
{
- private Dictionary<int, ServiceProcessRequest> _commands;
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
- public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
public IFileSystemProxy()
{
- _commands = new Dictionary<int, ServiceProcessRequest>
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 1, Initialize },
{ 8, OpenFileSystemWithId },
@@ -36,246 +36,246 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
}
// Initialize(u64, pid)
- public long Initialize(ServiceCtx context)
+ public long Initialize(ServiceCtx Context)
{
return 0;
}
// OpenFileSystemWithId(nn::fssrv::sf::FileSystemType filesystem_type, nn::ApplicationId tid, buffer<bytes<0x301>, 0x19, 0x301> path)
// -> object<nn::fssrv::sf::IFileSystem> contentFs
- public long OpenFileSystemWithId(ServiceCtx context)
+ public long OpenFileSystemWithId(ServiceCtx Context)
{
- FileSystemType fileSystemType = (FileSystemType)context.RequestData.ReadInt32();
- long titleId = context.RequestData.ReadInt64();
- string switchPath = ReadUtf8String(context);
- string fullPath = context.Device.FileSystem.SwitchPathToSystemPath(switchPath);
+ FileSystemType FileSystemType = (FileSystemType)Context.RequestData.ReadInt32();
+ long TitleId = Context.RequestData.ReadInt64();
+ string SwitchPath = ReadUtf8String(Context);
+ string FullPath = Context.Device.FileSystem.SwitchPathToSystemPath(SwitchPath);
- if (!File.Exists(fullPath))
+ if (!File.Exists(FullPath))
{
- if (fullPath.Contains("."))
+ if (FullPath.Contains("."))
{
- return OpenFileSystemFromInternalFile(context, fullPath);
+ return OpenFileSystemFromInternalFile(Context, FullPath);
}
return MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist);
}
- FileStream fileStream = new FileStream(fullPath, FileMode.Open, FileAccess.Read);
- string extension = Path.GetExtension(fullPath);
+ FileStream FileStream = new FileStream(FullPath, FileMode.Open, FileAccess.Read);
+ string Extension = Path.GetExtension(FullPath);
- if (extension == ".nca")
+ if (Extension == ".nca")
{
- return OpenNcaFs(context, fullPath, fileStream);
+ return OpenNcaFs(Context, FullPath, FileStream);
}
- else if (extension == ".nsp")
+ else if (Extension == ".nsp")
{
- return OpenNsp(context, fullPath);
+ return OpenNsp(Context, FullPath);
}
return MakeError(ErrorModule.Fs, FsErr.InvalidInput);
}
// OpenBisFileSystem(nn::fssrv::sf::Partition partitionID, buffer<bytes<0x301>, 0x19, 0x301>) -> object<nn::fssrv::sf::IFileSystem> Bis
- public long OpenBisFileSystem(ServiceCtx context)
+ public long OpenBisFileSystem(ServiceCtx Context)
{
- int bisPartitionId = context.RequestData.ReadInt32();
- string partitionString = ReadUtf8String(context);
- string bisPartitonPath = string.Empty;
+ int BisPartitionId = Context.RequestData.ReadInt32();
+ string PartitionString = ReadUtf8String(Context);
+ string BisPartitonPath = string.Empty;
- switch (bisPartitionId)
+ switch (BisPartitionId)
{
case 29:
- bisPartitonPath = SafeNandPath;
+ BisPartitonPath = SafeNandPath;
break;
case 30:
case 31:
- bisPartitonPath = SystemNandPath;
+ BisPartitonPath = SystemNandPath;
break;
case 32:
- bisPartitonPath = UserNandPath;
+ BisPartitonPath = UserNandPath;
break;
default:
return MakeError(ErrorModule.Fs, FsErr.InvalidInput);
}
- string fullPath = context.Device.FileSystem.GetFullPartitionPath(bisPartitonPath);
+ string FullPath = Context.Device.FileSystem.GetFullPartitionPath(BisPartitonPath);
- FileSystemProvider fileSystemProvider = new FileSystemProvider(fullPath, context.Device.FileSystem.GetBasePath());
+ FileSystemProvider FileSystemProvider = new FileSystemProvider(FullPath, Context.Device.FileSystem.GetBasePath());
- MakeObject(context, new IFileSystem(fullPath, fileSystemProvider));
+ MakeObject(Context, new IFileSystem(FullPath, FileSystemProvider));
return 0;
}
// OpenSdCardFileSystem() -> object<nn::fssrv::sf::IFileSystem>
- public long OpenSdCardFileSystem(ServiceCtx context)
+ public long OpenSdCardFileSystem(ServiceCtx Context)
{
- string sdCardPath = context.Device.FileSystem.GetSdCardPath();
+ string SdCardPath = Context.Device.FileSystem.GetSdCardPath();
- FileSystemProvider fileSystemProvider = new FileSystemProvider(sdCardPath, context.Device.FileSystem.GetBasePath());
+ FileSystemProvider FileSystemProvider = new FileSystemProvider(SdCardPath, Context.Device.FileSystem.GetBasePath());
- MakeObject(context, new IFileSystem(sdCardPath, fileSystemProvider));
+ MakeObject(Context, new IFileSystem(SdCardPath, FileSystemProvider));
return 0;
}
// OpenSaveDataFileSystem(u8 save_data_space_id, nn::fssrv::sf::SaveStruct saveStruct) -> object<nn::fssrv::sf::IFileSystem> saveDataFs
- public long OpenSaveDataFileSystem(ServiceCtx context)
+ public long OpenSaveDataFileSystem(ServiceCtx Context)
{
- LoadSaveDataFileSystem(context);
+ LoadSaveDataFileSystem(Context);
return 0;
}
// OpenSaveDataFileSystemBySystemSaveDataId(u8 save_data_space_id, nn::fssrv::sf::SaveStruct saveStruct) -> object<nn::fssrv::sf::IFileSystem> systemSaveDataFs
- public long OpenSaveDataFileSystemBySystemSaveDataId(ServiceCtx context)
+ public long OpenSaveDataFileSystemBySystemSaveDataId(ServiceCtx Context)
{
- LoadSaveDataFileSystem(context);
+ LoadSaveDataFileSystem(Context);
return 0;
}
// OpenDataStorageByCurrentProcess() -> object<nn::fssrv::sf::IStorage> dataStorage
- public long OpenDataStorageByCurrentProcess(ServiceCtx context)
+ public long OpenDataStorageByCurrentProcess(ServiceCtx Context)
{
- MakeObject(context, new IStorage(context.Device.FileSystem.RomFs));
+ MakeObject(Context, new IStorage(Context.Device.FileSystem.RomFs));
return 0;
}
// OpenDataStorageByDataId(u8 storageId, nn::ApplicationId tid) -> object<nn::fssrv::sf::IStorage> dataStorage
- public long OpenDataStorageByDataId(ServiceCtx context)
+ public long OpenDataStorageByDataId(ServiceCtx Context)
{
- StorageId storageId = (StorageId)context.RequestData.ReadByte();
- byte[] padding = context.RequestData.ReadBytes(7);
- long titleId = context.RequestData.ReadInt64();
+ StorageId StorageId = (StorageId)Context.RequestData.ReadByte();
+ byte[] Padding = Context.RequestData.ReadBytes(7);
+ long TitleId = Context.RequestData.ReadInt64();
- StorageId installedStorage =
- context.Device.System.ContentManager.GetInstalledStorage(titleId, ContentType.Data, storageId);
+ StorageId InstalledStorage =
+ Context.Device.System.ContentManager.GetInstalledStorage(TitleId, ContentType.Data, StorageId);
- if (installedStorage == StorageId.None)
+ if (InstalledStorage == StorageId.None)
{
- installedStorage =
- context.Device.System.ContentManager.GetInstalledStorage(titleId, ContentType.AocData, storageId);
+ InstalledStorage =
+ Context.Device.System.ContentManager.GetInstalledStorage(TitleId, ContentType.AocData, StorageId);
}
- if (installedStorage != StorageId.None)
+ if (InstalledStorage != StorageId.None)
{
- string contentPath = context.Device.System.ContentManager.GetInstalledContentPath(titleId, storageId, ContentType.AocData);
+ string ContentPath = Context.Device.System.ContentManager.GetInstalledContentPath(TitleId, StorageId, ContentType.AocData);
- if (string.IsNullOrWhiteSpace(contentPath))
+ if (string.IsNullOrWhiteSpace(ContentPath))
{
- contentPath = context.Device.System.ContentManager.GetInstalledContentPath(titleId, storageId, ContentType.AocData);
+ ContentPath = Context.Device.System.ContentManager.GetInstalledContentPath(TitleId, StorageId, ContentType.AocData);
}
- string installPath = context.Device.FileSystem.SwitchPathToSystemPath(contentPath);
+ string InstallPath = Context.Device.FileSystem.SwitchPathToSystemPath(ContentPath);
- if (!string.IsNullOrWhiteSpace(installPath))
+ if (!string.IsNullOrWhiteSpace(InstallPath))
{
- string ncaPath = installPath;
+ string NcaPath = InstallPath;
- if (File.Exists(ncaPath))
+ if (File.Exists(NcaPath))
{
- FileStream ncaStream = new FileStream(ncaPath, FileMode.Open, FileAccess.Read);
- Nca nca = new Nca(context.Device.System.KeySet, ncaStream, false);
- NcaSection romfsSection = nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Romfs);
- Stream romfsStream = nca.OpenSection(romfsSection.SectionNum, false, context.Device.System.FsIntegrityCheckLevel);
+ FileStream NcaStream = new FileStream(NcaPath, FileMode.Open, FileAccess.Read);
+ Nca Nca = new Nca(Context.Device.System.KeySet, NcaStream, false);
+ NcaSection RomfsSection = Nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Romfs);
+ Stream RomfsStream = Nca.OpenSection(RomfsSection.SectionNum, false, Context.Device.System.FsIntegrityCheckLevel);
- MakeObject(context, new IStorage(romfsStream));
+ MakeObject(Context, new IStorage(RomfsStream));
return 0;
}
else
{
- throw new FileNotFoundException($"No Nca found in Path `{ncaPath}`.");
+ throw new FileNotFoundException($"No Nca found in Path `{NcaPath}`.");
}
}
else
{
- throw new DirectoryNotFoundException($"Path for title id {titleId:x16} on Storage {storageId} was not found in Path {installPath}.");
+ throw new DirectoryNotFoundException($"Path for title id {TitleId:x16} on Storage {StorageId} was not found in Path {InstallPath}.");
}
}
- throw new FileNotFoundException($"System archive with titleid {titleId:x16} was not found on Storage {storageId}. Found in {installedStorage}.");
+ throw new FileNotFoundException($"System archive with titleid {TitleId:x16} was not found on Storage {StorageId}. Found in {InstalledStorage}.");
}
// OpenPatchDataStorageByCurrentProcess() -> object<nn::fssrv::sf::IStorage>
- public long OpenPatchDataStorageByCurrentProcess(ServiceCtx context)
+ public long OpenPatchDataStorageByCurrentProcess(ServiceCtx Context)
{
- MakeObject(context, new IStorage(context.Device.FileSystem.RomFs));
+ MakeObject(Context, new IStorage(Context.Device.FileSystem.RomFs));
return 0;
}
// GetGlobalAccessLogMode() -> u32 logMode
- public long GetGlobalAccessLogMode(ServiceCtx context)
+ public long GetGlobalAccessLogMode(ServiceCtx Context)
{
- context.ResponseData.Write(0);
+ Context.ResponseData.Write(0);
return 0;
}
- public void LoadSaveDataFileSystem(ServiceCtx context)
+ public void LoadSaveDataFileSystem(ServiceCtx Context)
{
- SaveSpaceId saveSpaceId = (SaveSpaceId)context.RequestData.ReadInt64();
+ SaveSpaceId SaveSpaceId = (SaveSpaceId)Context.RequestData.ReadInt64();
- long titleId = context.RequestData.ReadInt64();
+ long TitleId = Context.RequestData.ReadInt64();
- UInt128 userId = new UInt128(
- context.RequestData.ReadInt64(),
- context.RequestData.ReadInt64());
+ UInt128 UserId = new UInt128(
+ Context.RequestData.ReadInt64(),
+ Context.RequestData.ReadInt64());
- long saveId = context.RequestData.ReadInt64();
- SaveDataType saveDataType = (SaveDataType)context.RequestData.ReadByte();
- SaveInfo saveInfo = new SaveInfo(titleId, saveId, saveDataType, userId, saveSpaceId);
- string savePath = context.Device.FileSystem.GetGameSavePath(saveInfo, context);
- FileSystemProvider fileSystemProvider = new FileSystemProvider(savePath, context.Device.FileSystem.GetBasePath());
+ long SaveId = Context.RequestData.ReadInt64();
+ SaveDataType SaveDataType = (SaveDataType)Context.RequestData.ReadByte();
+ SaveInfo SaveInfo = new SaveInfo(TitleId, SaveId, SaveDataType, UserId, SaveSpaceId);
+ string SavePath = Context.Device.FileSystem.GetGameSavePath(SaveInfo, Context);
+ FileSystemProvider FileSystemProvider = new FileSystemProvider(SavePath, Context.Device.FileSystem.GetBasePath());
- MakeObject(context, new IFileSystem(savePath, fileSystemProvider));
+ MakeObject(Context, new IFileSystem(SavePath, FileSystemProvider));
}
- private long OpenNsp(ServiceCtx context, string pfsPath)
+ private long OpenNsp(ServiceCtx Context, string PfsPath)
{
- FileStream pfsFile = new FileStream(pfsPath, FileMode.Open, FileAccess.Read);
- Pfs nsp = new Pfs(pfsFile);
- PfsFileEntry ticketFile = nsp.Files.FirstOrDefault(x => x.Name.EndsWith(".tik"));
+ FileStream PfsFile = new FileStream(PfsPath, FileMode.Open, FileAccess.Read);
+ Pfs Nsp = new Pfs(PfsFile);
+ PfsFileEntry TicketFile = Nsp.Files.FirstOrDefault(x => x.Name.EndsWith(".tik"));
- if (ticketFile != null)
+ if (TicketFile != null)
{
- Ticket ticket = new Ticket(nsp.OpenFile(ticketFile));
+ Ticket Ticket = new Ticket(Nsp.OpenFile(TicketFile));
- context.Device.System.KeySet.TitleKeys[ticket.RightsId] =
- ticket.GetTitleKey(context.Device.System.KeySet);
+ Context.Device.System.KeySet.TitleKeys[Ticket.RightsId] =
+ Ticket.GetTitleKey(Context.Device.System.KeySet);
}
- IFileSystem nspFileSystem = new IFileSystem(pfsPath, new PFsProvider(nsp));
+ IFileSystem NspFileSystem = new IFileSystem(PfsPath, new PFsProvider(Nsp));
- MakeObject(context, nspFileSystem);
+ MakeObject(Context, NspFileSystem);
return 0;
}
- private long OpenNcaFs(ServiceCtx context,string ncaPath, Stream ncaStream)
+ private long OpenNcaFs(ServiceCtx Context,string NcaPath, Stream NcaStream)
{
- Nca nca = new Nca(context.Device.System.KeySet, ncaStream, false);
+ Nca Nca = new Nca(Context.Device.System.KeySet, NcaStream, false);
- NcaSection romfsSection = nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Romfs);
- NcaSection pfsSection = nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Pfs0);
+ NcaSection RomfsSection = Nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Romfs);
+ NcaSection PfsSection = Nca.Sections.FirstOrDefault(x => x?.Type == SectionType.Pfs0);
- if (romfsSection != null)
+ if (RomfsSection != null)
{
- Stream romfsStream = nca.OpenSection(romfsSection.SectionNum, false, context.Device.System.FsIntegrityCheckLevel);
- IFileSystem ncaFileSystem = new IFileSystem(ncaPath, new RomFsProvider(romfsStream));
+ Stream RomfsStream = Nca.OpenSection(RomfsSection.SectionNum, false, Context.Device.System.FsIntegrityCheckLevel);
+ IFileSystem NcaFileSystem = new IFileSystem(NcaPath, new RomFsProvider(RomfsStream));
- MakeObject(context, ncaFileSystem);
+ MakeObject(Context, NcaFileSystem);
}
- else if(pfsSection !=null)
+ else if(PfsSection !=null)
{
- Stream pfsStream = nca.OpenSection(pfsSection.SectionNum, false, context.Device.System.FsIntegrityCheckLevel);
- Pfs pfs = new Pfs(pfsStream);
- IFileSystem ncaFileSystem = new IFileSystem(ncaPath, new PFsProvider(pfs));
+ Stream PfsStream = Nca.OpenSection(PfsSection.SectionNum, false, Context.Device.System.FsIntegrityCheckLevel);
+ Pfs Pfs = new Pfs(PfsStream);
+ IFileSystem NcaFileSystem = new IFileSystem(NcaPath, new PFsProvider(Pfs));
- MakeObject(context, ncaFileSystem);
+ MakeObject(Context, NcaFileSystem);
}
else
{
@@ -285,38 +285,38 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
return 0;
}
- private long OpenFileSystemFromInternalFile(ServiceCtx context, string fullPath)
+ private long OpenFileSystemFromInternalFile(ServiceCtx Context, string FullPath)
{
- DirectoryInfo archivePath = new DirectoryInfo(fullPath).Parent;
+ DirectoryInfo ArchivePath = new DirectoryInfo(FullPath).Parent;
- while (string.IsNullOrWhiteSpace(archivePath.Extension))
+ while (string.IsNullOrWhiteSpace(ArchivePath.Extension))
{
- archivePath = archivePath.Parent;
+ ArchivePath = ArchivePath.Parent;
}
- if (archivePath.Extension == ".nsp" && File.Exists(archivePath.FullName))
+ if (ArchivePath.Extension == ".nsp" && File.Exists(ArchivePath.FullName))
{
- FileStream pfsFile = new FileStream(
- archivePath.FullName.TrimEnd(Path.DirectorySeparatorChar),
+ FileStream PfsFile = new FileStream(
+ ArchivePath.FullName.TrimEnd(Path.DirectorySeparatorChar),
FileMode.Open,
FileAccess.Read);
- Pfs nsp = new Pfs(pfsFile);
- PfsFileEntry ticketFile = nsp.Files.FirstOrDefault(x => x.Name.EndsWith(".tik"));
+ Pfs Nsp = new Pfs(PfsFile);
+ PfsFileEntry TicketFile = Nsp.Files.FirstOrDefault(x => x.Name.EndsWith(".tik"));
- if (ticketFile != null)
+ if (TicketFile != null)
{
- Ticket ticket = new Ticket(nsp.OpenFile(ticketFile));
+ Ticket Ticket = new Ticket(Nsp.OpenFile(TicketFile));
- context.Device.System.KeySet.TitleKeys[ticket.RightsId] =
- ticket.GetTitleKey(context.Device.System.KeySet);
+ Context.Device.System.KeySet.TitleKeys[Ticket.RightsId] =
+ Ticket.GetTitleKey(Context.Device.System.KeySet);
}
- string filename = fullPath.Replace(archivePath.FullName, string.Empty).TrimStart('\\');
+ string Filename = FullPath.Replace(ArchivePath.FullName, string.Empty).TrimStart('\\');
- if (nsp.FileExists(filename))
+ if (Nsp.FileExists(Filename))
{
- return OpenNcaFs(context, fullPath, nsp.OpenFile(filename));
+ return OpenNcaFs(Context, FullPath, Nsp.OpenFile(Filename));
}
}
diff --git a/Ryujinx.HLE/HOS/Services/FspSrv/IStorage.cs b/Ryujinx.HLE/HOS/Services/FspSrv/IStorage.cs
index d000635d..6a78cdfe 100644
--- a/Ryujinx.HLE/HOS/Services/FspSrv/IStorage.cs
+++ b/Ryujinx.HLE/HOS/Services/FspSrv/IStorage.cs
@@ -6,47 +6,47 @@ namespace Ryujinx.HLE.HOS.Services.FspSrv
{
class IStorage : IpcService
{
- private Dictionary<int, ServiceProcessRequest> _commands;
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
- public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands;
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
- private Stream _baseStream;
+ private Stream BaseStream;
- public IStorage(Stream baseStream)
+ public IStorage(Stream BaseStream)
{
- _commands = new Dictionary<int, ServiceProcessRequest>
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, Read }
};
- _baseStream = baseStream;
+ this.BaseStream = BaseStream;
}
// Read(u64 offset, u64 length) -> buffer<u8, 0x46, 0> buffer
- public long Read(ServiceCtx context)
+ public long Read(ServiceCtx Context)
{
- long offset = context.RequestData.ReadInt64();
- long size = context.RequestData.ReadInt64();
+ long Offset = Context.RequestData.ReadInt64();
+ long Size = Context.RequestData.ReadInt64();
- if (context.Request.ReceiveBuff.Count > 0)
+ if (Context.Request.ReceiveBuff.Count > 0)
{
- IpcBuffDesc buffDesc = context.Request.ReceiveBuff[0];
+ IpcBuffDesc BuffDesc = Context.Request.ReceiveBuff[0];
//Use smaller length to avoid overflows.
- if (size > buffDesc.Size)
+ if (Size > BuffDesc.Size)
{
- size = buffDesc.Size;
+ Size = BuffDesc.Size;
}
- byte[] data = new byte[size];
+ byte[] Data = new byte[Size];
- lock (_baseStream)
+ lock (BaseStream)
{
- _baseStream.Seek(offset, SeekOrigin.Begin);
- _baseStream.Read(data, 0, data.Length);
+ BaseStream.Seek(Offset, SeekOrigin.Begin);
+ BaseStream.Read(Data, 0, Data.Length);
}
- context.Memory.WriteBytes(buffDesc.Position, data);
+ Context.Memory.WriteBytes(BuffDesc.Position, Data);
}
return 0;