Commit graph

93 commits

Author SHA1 Message Date
Alex Barney
7294206116 Update ISaveDataFileSystemCreator.Create
Update method parameters and rewrite the method to use SaveDataSharedFileStorage.

SaveDataFileSystemCreator now requires a FileSystemServer at construction time, so DefaultFsServerObjects must be created after FileSystemServer construction but before FileSystemServer initialization.
2021-06-01 10:38:17 -07:00
Alex Barney
fc731076ef Remove SaveDataInfoFilter layout tests
SaveDataInfoFilter is an internal struct so there's no need to test the struct's size and layout
2021-06-01 10:38:17 -07:00
Alex Barney
649c72e5e6 Add extra data handling to DirectorySaveDataFileSystem 2021-06-01 10:38:17 -07:00
Alex Barney
52c0903f61 Add Ncm.ProgramLocation 2021-04-25 15:42:48 -07:00
Alex Barney
a730c17bc5 Add Loader.MetaLoader 2021-04-16 14:55:30 -07:00
Alex Barney
bb2c870f27 Update DirectorySaveDataFileSystem to 11.0.0 2021-04-15 16:30:12 -07:00
Alex Barney
0c255e0f49 Update common path handling code
- Updates path handling code to system version 11.0.0.
- Changes InMemoryFileSystem to normalize all incoming paths.
2021-03-28 16:03:05 -07:00
Alex Barney
a5d41f5b1f Update build scripts and build dependencies 2021-03-19 16:57:11 -07:00
Alex Barney
6641109d94 Update FS shims for new Horizon and access log code
Makes all current FS shims more accurate, including using rewritten access log and system tick handling code.
2021-03-12 01:34:14 -07:00
Alex Barney
684fcd460f Swap in the new fsa code except for some access log calls 2021-03-12 01:34:14 -07:00
Alex Barney
61654298d2 Implement or skeleton some mounting code 2021-03-12 01:34:14 -07:00
Alex Barney
e50078d939 Move initialization code out of FileSystemServer 2021-02-07 00:26:20 -07:00
Alex Barney
e3c14dfa4f Add FileSystemProxyServiceObject for the FileSystemClient
Moves all the Get*ServiceObject functions to their own file.
Adds InitializeDfcFileSystemProxyServiceObject.
2021-02-06 00:29:47 -07:00
Alex Barney
f2f68958a8 Pull in some results from Atmosphere 2021-01-19 21:30:02 -07:00
Alex Barney
4bf7060ec7
Update ReSharper var style and warnings (#172)
ReSharper 2020.Something modified the var style again so that arrays of built-in types also count as built-in types, meaning the type should always be explicit.
2021-01-19 19:49:58 -07:00
Alex Barney
4efd95f94c Add BufferedStorage with some supporting classes 2021-01-18 23:48:37 -07:00
Alex Barney
e82d3e039b Update build and test packages 2020-11-17 22:41:54 -06:00
Alex Barney
25f8115600 Move to .NET 5.0 2020-11-17 22:41:54 -06:00
Alex Barney
882e6bc937 Separate fssrv save code to SaveDataFileSystemService 2020-11-01 23:54:00 -07:00
Alex Barney
5dc7c57851 Fully implement LR client and LocationResolverSet 2020-10-14 15:11:35 -07:00
Alex Barney
b5dabe78f5 Replace hex string converter and move StringUtils 2020-10-10 20:17:07 -07:00
Alex Barney
770406e9c2 Remove the old Keyset class 2020-10-05 12:25:39 -07:00
Alex Barney
333ef8729f Fix RSA regression from 5f755bc7 and add a test 2020-10-02 01:33:44 -07:00
Alex Barney
f7030aef4f Add a new KeySet class 2020-10-01 18:06:32 -07:00
Alex Barney
49711b12db Tweaks and cleanup for PR #164
- Fully span-ify CalculateCmac and update callers.
- Modify CalculateCmac signature to match Nintendo's.
- Avoid doing stackalloc based on an input length parameter.
- Use ReadOnlySpan instead of Span where appropriate.
- Standardize XML comments to use triple slashes.
- Make use of the entire rented buffer when copying.

Unrelated to the PR
- Slip in a missed enum to string conversion in hactoolnet for CoreRT reflection-free mode.
2020-09-05 21:10:39 -07:00
Xpl0itR
265147b678
Changes to CryptoOld
- Remove AES functions and replace references with functions from the Crypto.Aes class
- Edit and move the AES-CMAC function into the Crypto.Aes class
- Move BigInteger functions to the Utilities class
- Reduce duplication between the RSA functions
- Edit and move the Rsa parameter recovery function into the Crypto.Rsa class
2020-09-02 19:09:27 +01:00
Alex Barney
4552a2d94f Add permission checks to DeleteSaveDataFileSystem 2020-08-26 17:10:12 -07:00
Alex Barney
1f25b87d20 Add RegisterProgramIndexMapInfo shim and tests 2020-08-26 17:10:12 -07:00
Alex Barney
6496a2c1bc Honor permissions in OpenFileSystemWithId. Add basic AC test 2020-08-26 17:10:12 -07:00
Alex Barney
071b608f5f Tweak how the Horizon class and service manager work
- Store IServiceObjects in the service manager that return the usable objects instead of storing the objects directly
- Register FS services in the service manager instead of giving them special treatment
- Give each created HorizonClient its own "process ID"
2020-08-26 17:10:12 -07:00
Alex Barney
a005b40022 Build updates
Use the version in the .csproj if there is no local git repository.
Always use Windows line endings in codegen output.
Update build dependency versions. We're still using GitVersion 5.1.3 because of https://github.com/nuke-build/nuke/issues/509.
2020-08-15 23:34:48 -07:00
Alex Barney
81340027fc Rename FsService to FsSrv 2020-08-07 18:32:01 -07:00
Alex Barney
730167785e Add a few save data management tests 2020-08-07 10:02:50 -07:00
Alex Barney
c1b9eb8903 Change ref to in where possible in SaveDataIndexer and kvdb 2020-08-07 10:02:50 -07:00
Alex Barney
37251968c0 Add FlatMapKeyValueStore with tests 2020-08-07 10:02:50 -07:00
Alex Barney
717e54fe4e Rename TitleId to ProgramId and add other NCM ID types 2020-08-07 10:02:50 -07:00
Alex Barney
ff96c8575b Use "Result" and "Success" asserts in tests 2020-07-06 11:43:48 -07:00
Alex Barney
106c36492b Move IFileSystem etc. into fsa namespace 2020-06-09 22:55:59 -07:00
Alex Barney
ef1481b04c Replace old fsa classes with new ones 2020-06-07 15:23:51 -07:00
Alex Barney
064da36453 Rename old IFile option enums 2020-06-06 14:18:03 -07:00
Alex Barney
cb8b088487
Misc additions and warning fixes (#134)
* Run codegen and fix DeliveryCacheFileMetaEntry layout

* Use KipReader instead of Kip

* Ensure feature parity between U8String structs

* Don't use the obsolete Nacp class

* Add some null checks

* Address ReSharper warnings

* The Result structs should be readonly
2020-05-12 17:06:55 -07:00
Alex Barney
44e4c7a311
Add some fssystem utility functions and use them in DirectorySaveDataFileSystem (#133)
* Accurately implement DirectorySaveDataFileSystem

* DirectorySaveDataFileSystem updates from FS 10.0
2020-05-12 13:17:06 -07:00
Alex Barney
12775895eb Add non-system BCAT mount shim 2020-04-04 14:19:36 -07:00
Alex Barney
7bcb09b714 Add BIS shim functions with tests 2020-04-04 14:16:17 -07:00
Alex Barney
0e26c31a2f Enable OpenHostFileSystem in FileSystemProxy and add XML docs 2020-03-16 15:07:09 -07:00
Alex Barney
f7957b4cc8 Remove some old code 2020-03-14 23:27:49 -07:00
Alex Barney
328968c630 Use U8Span more in FilleSystemClient 2020-03-09 00:06:39 -07:00
Alex Barney
c141b72912 Use U8Span in IFileSystem instead of string 2020-03-08 01:00:02 -07:00
Alex Barney
d6fede0893 Don't return duplicate entries in LayeredFS. Add tests 2020-03-03 18:19:11 -07:00
Alex Barney
7ce9ea09e6 Misc build updates 2020-02-29 01:36:23 -07:00