Commit graph

710 commits

Author SHA1 Message Date
Alex Barney
634ab59742 Add BlockCacheManager and skeleton CompressedStorage 2021-12-15 01:17:56 -07:00
Alex Barney
527d81a3b2 Add default constructors to some mutex types 2021-12-14 23:03:11 -07:00
Alex Barney
e0b482f44b Add a description of the LibHac.Tools namespace 2022-01-07 00:33:47 -07:00
Alex Barney
14fcdc9d67 Move Npdm, LayeredFileSystem 2022-01-07 00:33:47 -07:00
Alex Barney
a289059ecf Move InMemoryFileSystem, PathParser, PathTools 2022-01-07 00:33:47 -07:00
Alex Barney
d0a1d98885 Move PartitionFileSystemBuilder, ConcatenationStorage 2022-01-07 00:33:47 -07:00
Alex Barney
c5f904710a Move IntegrityVerificationStorage 2022-01-07 00:33:47 -07:00
Alex Barney
27bf4a1003 Move DirectoryEntryEx 2022-01-07 00:33:47 -07:00
Alex Barney
00a5b07da0 Remove use of PathTools constants 2022-01-07 00:33:47 -07:00
Alex Barney
865f271fe7 Move StreamFile, StreamStorage, StorageExtensions, FileReader 2022-01-07 00:33:47 -07:00
Alex Barney
c6a09d1dfa Move StorageStream, NullFile, NullStorage 2022-01-07 00:33:47 -07:00
Alex Barney
de2d6746fe Move FileSystemExtensions, Messages 2022-01-07 00:33:47 -07:00
Alex Barney
5acff2acab Move CachedStorage, SectorStorage and derivatives 2022-01-07 00:33:47 -07:00
Alex Barney
ae35a1b916 Fix or suppress some ReSharper warnings 2022-01-07 00:33:47 -07:00
Alex Barney
0846b86249 Move AesXtsFileSystem 2022-01-07 00:33:47 -07:00
Alex Barney
f73d206901 Move ResultNameResolver 2022-01-07 00:33:47 -07:00
Alex Barney
8e5f400048 Move CryptoOld 2022-01-07 00:33:47 -07:00
Alex Barney
2bd1c05ed5 Move some files to LibHac.Common 2022-01-07 00:33:47 -07:00
Alex Barney
50dab0c7c9 Move InternalsVisibleToAttribute to the .csproj 2022-01-07 00:33:47 -07:00
Alex Barney
bba1030143 Move Lz4 2022-01-07 00:33:47 -07:00
Alex Barney
56b0695d0a Move Calibration 2022-01-07 00:33:47 -07:00
Alex Barney
34faf2b468 Move RomFs 2022-01-07 00:33:47 -07:00
Alex Barney
aa153980be Move NcaUtils 2022-01-07 00:33:47 -07:00
Alex Barney
7681429c97 Move NxFileStream, Delta 2022-01-07 00:33:47 -07:00
Alex Barney
3c6d082ad4 Make sure modifiers are all in a consistent order 2022-01-07 00:33:47 -07:00
Alex Barney
e3d55f6793 Move Keys 2022-01-07 00:33:47 -07:00
Alex Barney
2d86d63fc6 Move FsSystem/Save 2022-01-07 00:33:47 -07:00
Alex Barney
fef8e16a85 Move FileSystemClientUtils 2022-01-07 00:33:47 -07:00
Alex Barney
a88b3058e9 Move Ticket, SwitchFs, Cnmt, Nro, Xci again 2022-01-07 00:33:47 -07:00
Alex Barney
da930dfa81 Move Xci 2022-01-07 00:33:47 -07:00
Alex Barney
3e17692a25 Update version to v0.15.0 and .NET 6.0 2021-12-18 17:53:51 -07:00
Alex Barney
592343212f Add new key sources for key generation 13 2021-12-18 13:49:43 -07:00
Alex Barney
2f8e68e35f Fix LocalFileSystem on Linux 2021-12-18 13:24:10 -07:00
Alex Barney
8ccd4e11c0 Include the pdb file in the .nupkg
Works around jbevain/cecil#610

Using InlineIL.Fody messes up the pdb checksum which makes nuget.org consider the .snupkg to be invalid. Workaround this by including the pdb in the main .nupkg
2021-12-16 18:28:43 -07:00
Alex Barney
9451553fde AesXtsFile: Don't take the input file until the end of the constructor
An exception in the constructor would make it so the file wasn't disposed correctly
2021-12-14 01:43:29 -07:00
Alex Barney
2540f071ea LocalFileSystem: Allow deleting read-only files and directories 2021-12-14 01:43:29 -07:00
Alex Barney
6910049070 Fix bugs when copying directories
- CopyDirectoryRecursively would try to create directories on the source FS instead of the destination FS.
- Don't output file name twice in CopyDirectoryRecursively .
2021-12-14 01:43:29 -07:00
Alex Barney
a76b0ef075 hactoolnet: Fix error when extracting an nca's exefs 2021-12-11 01:37:19 -07:00
Alex Barney
f80af38c64 Add Language enum 2021-12-10 18:16:39 -07:00
Alex Barney
b5ccde1a29 Support NCAs with sparse partitions 2021-12-04 15:49:31 -07:00
Alex Barney
921fbab17a Improve IndirectStorage allocations
Make sure rented arrays are returned and remove delegate allocations by using lambda functions
2021-12-04 15:49:31 -07:00
Alex Barney
40925034e1 Update IndirectStorage and SparseStorage for 13.0 2021-12-04 15:49:31 -07:00
Alex Barney
f180bfeef9 Update BucketTree for 13.0 2021-12-04 15:49:31 -07:00
Alex Barney
771f2cdb26 Add ValueSubStorage 2021-12-04 15:49:31 -07:00
Alex Barney
280fe14b5f Consolidate the 2 separate Buffer types 2021-12-04 15:49:31 -07:00
Alex Barney
f526860599 Modify a few result names 2021-12-04 15:49:31 -07:00
Alex Barney
01ecd31110 hactoolnet: Add disablekeywarns option 2021-11-17 12:00:12 -07:00
Alex Barney
80e7466840 Add parameterless constructor to Fs.Path
We can finally initialize Fs.Path correctly thanks to C# 10 allowing parameterless constructors on structs
2021-11-14 18:36:53 -07:00
Alex Barney
34dda02c38 Use file-scoped namespaces 2021-11-14 18:36:53 -07:00
Alex Barney
6fe89a2966 Properly catch exceptions in LocalFileSystem.CleanDirectoryRecursively 2021-11-04 13:25:00 -07:00
Alex Barney
2793648d37 Remove deprecated classes 2021-11-04 13:02:25 -07:00
Alex Barney
0a8fb8a5c0 Update package1 and package2 readers to use SharedRef<T> 2021-11-03 23:08:50 -07:00
Alex Barney
2370f76c62 Bump version to 0.14.0 2021-11-03 23:08:50 -07:00
Alex Barney
257bdf0c46 Fix usages of SharedRef/UniqueRef 2021-11-03 23:08:50 -07:00
Alex Barney
f9f31056ef Use "in" instead of "ref" where appropriate in SharedRef<T> 2021-11-03 23:08:50 -07:00
Alex Barney
770cd222f1 Update Xci.HasPartition for the new path handling 2021-11-03 23:08:50 -07:00
Alex Barney
e14a20b4fa Use SharedRef in the bcat IPC interfaces 2021-11-03 23:08:50 -07:00
Alex Barney
f07e515048 Fix a new SubStorage bug and add NonCopyable attributes 2021-11-03 23:08:50 -07:00
Alex Barney
1f14a1c360 Fix some usages of SharedRef 2021-11-03 23:08:50 -07:00
Alex Barney
a23d01e934 Move code to use SharedRef instead of ReferenceCountedDisposable 2021-11-03 23:08:50 -07:00
Alex Barney
c28128c7dd Add SharedRef<T> and WeakRef<T> 2021-11-03 23:08:50 -07:00
Alex Barney
6082c10efa Fix bug in FileSystemServiceObjectAdapter.DoCreateDirectory 2021-11-03 23:08:50 -07:00
Alex Barney
01ca9e0412 Introduce UniqueRef<T> and use it in IFileSystem 2021-11-03 23:08:50 -07:00
Alex Barney
5f85c0b8e2 Use using statements to dispose Fs.Path variables 2021-11-03 23:08:50 -07:00
Alex Barney
39f727bc0d Address new warnings from Resharper 2021.2 2021-08-06 23:14:58 -07:00
Alex Barney
b244318e3a Add XML docs to Path 2021-08-06 18:51:55 -07:00
Alex Barney
689549fed7 Remove old path code 2021-08-05 12:59:57 -07:00
Alex Barney
aad87ec845 Update the FsSystem namespace to use Fs.Path 2021-08-05 11:59:05 -07:00
Alex Barney
6ba10074a3 Update the FsSrv namespace to use Fs.Path 2021-08-02 18:31:32 -07:00
Alex Barney
9a97e5ef3e Update lr client and LocationResolverSet 2021-08-02 18:30:00 -07:00
Alex Barney
6db134cae4 Update SaveDataFileSystemServiceImpl to use Path 2021-07-29 11:36:17 -07:00
Alex Barney
2f58e2fd5a Update ConcatenationFileSystem 2021-07-26 10:20:00 -07:00
Alex Barney
8bb6b0e824 Update FsSystem.Utility 2021-07-26 10:19:59 -07:00
Alex Barney
b86b57a4d3 Update SubdirectoryFileSystem and InMemoryFileSystem 2021-07-26 10:19:59 -07:00
Alex Barney
4efe313281 Update file system accessor classes 2021-07-26 10:19:59 -07:00
Alex Barney
77aef9166f Update tests to use the updated fsa interfaces 2021-07-26 10:19:59 -07:00
Alex Barney
4ceb925cde Update MultiCommitManager 2021-07-26 10:19:59 -07:00
Alex Barney
4934b1cbef Update FileSystemInterfaceAdapter 2021-07-26 10:19:58 -07:00
Alex Barney
8e162cc3c8 Update FileSystemServiceObjectAdapter 2021-07-26 10:19:58 -07:00
Alex Barney
7d3ceb5315 Update IFileSystem for nnsdk 12.x 2021-07-16 13:58:49 -07:00
Alex Barney
b7897c8553 Rename IFilesystem params 2021-07-16 00:14:02 -07:00
Alex Barney
8a5ecb18f8 Move new path code to the proper namespace 2021-07-13 19:44:14 -07:00
Alex Barney
a7f5c7c041 Implement nn::fs::Path 2021-07-13 19:44:14 -07:00
Alex Barney
79a4c62b2e Add version 12 implementations of path utility classes 2021-07-13 19:44:14 -07:00
Alex Barney
f444a999ba Add misc helper functions and fix null assertion text 2021-07-13 19:44:14 -07:00
Alex Barney
ec6eff156c Add missing "Unexpected" FS results 2021-07-13 19:44:14 -07:00
Alex Barney
8406bea563 Implement CharacterEncoding 2021-07-13 19:44:14 -07:00
Alex Barney
76e5a20e1d Handle old, pre-release cnmt files 2021-07-10 17:08:30 -07:00
Alex Barney
7cbbf023ff Add new key sources for key generation 12 2021-07-06 17:28:14 -07:00
Alex Barney
20dcbf8664 Fix a permissions bug when creating system save data 2021-06-29 19:27:49 -07:00
Alex Barney
496858c7a7 Fix incorrect assert in BucketTree.NodeBuffer.Allocate 2021-06-22 19:45:58 -07:00
Alex Barney
b3dc972881 Allow FS access log to be used without a backing FS server
Reduces the hactoolnet build size by ~260 KB due to fssrv code no longer being used
2021-06-15 01:55:19 -07:00
Alex Barney
44fd3eb0a4 Update package metadata and readme
Changes the description of the project to better reflect what it does
2021-06-15 00:07:50 -07:00
Alex Barney
c59e72606f Add CreateApplicationCacheStorage 2021-06-08 19:13:47 -07:00
Alex Barney
3018eeb8e8 Fix accidentally disposing an ISaveDataInfoReader 2021-06-01 17:39:53 -07:00
Alex Barney
f4d6d6b3c8 Add some docs and fix a permissions logic error 2021-06-01 10:38:17 -07:00
Alex Barney
b346280bc9 Make SaveDataManagement functions public and add tests 2021-06-01 10:38:17 -07:00
Alex Barney
3056c5c296 Implement extra data functions in SaveDataFileSystemService 2021-06-01 10:38:17 -07:00
Alex Barney
e99d05cc84 Make sure extra data is initialized in DirectorySaveDataFileSystem 2021-06-01 10:38:17 -07:00
Alex Barney
a1477cc9f9 Use a lock file for directory save data 2021-06-01 10:38:17 -07:00