private void ProcessNcaFile(string ncaPath) { FsClient.OpenFile(out FileHandle ncaHandle, ncaPath, OpenMode.Read).ThrowIfFailure(); using (var ncaStorage = new FileHandleStorage(ncaHandle, true)) { Nca nca = OpenNca(ncaStorage); ProcessNca(nca); } }
private void ProcessNsp(string nspPath) { FsClient.OpenFile(out FileHandle nspHandle, nspPath, OpenMode.Read).ThrowIfFailure(); using (var nspStorage = new FileHandleStorage(nspHandle, true)) { var pfs = new PartitionFileSystemCore <StandardEntry>(); pfs.Initialize(nspStorage).ThrowIfFailure(); ProcessNcaFs(pfs); } }
private void ProcessNso(string nsoPath) { FsClient.OpenFile(out FileHandle nsoHandle, nsoPath, OpenMode.Read).ThrowIfFailure(); using (nsoHandle) using (var nsoStorage = new FileHandleStorage(nsoHandle, true)) using (var nsoFile = new StorageFile(nsoStorage, OpenMode.Read)) { var nso = new Nso(nsoStorage); NsoInfo info = GetNsoInfo((nso, nsoFile)); ParseNsoName(nsoPath, info); } }
private void ProcessXci(string xciPath) { FsClient.OpenFile(out FileHandle xciHandle, xciPath, OpenMode.Read).ThrowIfFailure(); using (var xciStorage = new FileHandleStorage(xciHandle, true)) { var xci = new Xci(Keyset, xciStorage); if (!xci.HasPartition(XciPartitionType.Secure)) { return; } IFileSystem secureFs = xci.OpenPartition(XciPartitionType.Secure); ProcessNcaFs(secureFs); } }