summaryrefslogtreecommitdiffstats
path: root/src/core/file_sys/content_archive.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* common_func: Use std::array for INSERT_PADDING_* macros.bunnei2019-11-041-11/+28
| | | | - Zero initialization here is useful for determinism.
* content_archive: Add accessors for Rights ID and SDK VersionZach Hilman2019-09-211-0/+8
|
* Update content_archive.cppjonsn0w2019-06-201-2/+2
| | | log clutter in debug logs when theres really no need
* content_archive: Add getter for logo section of NCAZach Hilman2019-01-151-0/+6
|
* content_archive: Add optional KeyManager parameter to constructorZach Hilman2018-11-021-2/+3
| | | | Allows resuing a common KeyManager when a large amount of NCAs are handled by the same class. Should the parameter not be provided, a new KeyManager will be constructed, as was the default behavior prior to this.
* global: Use std::optional instead of boost::optional (#1578)Frederic L2018-10-301-17/+16
| | | | | | | | | | | | | | | | * get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
* vfs: Remove InterpretAsDirectory and related functionsZach Hilman2018-10-191-3/+0
| | | | When writing VFS, it initally seemed useful to include a function to in-place convert container files into directories in one homogenous directory structure, but re-evaluating it now there have been plenty of chances to use it and there has always been a better way. Removing as it is unused and likely will not be used.
* content_archive: Simpify assignment of bktr_base_romfs in the constructorLioncash2018-10-161-2/+1
| | | | | std::move doesn't actually dereference the data, so it doesn't matter whether or not the type is null.
* content_archive: Make IsValidNCA() an internally linked functionLioncash2018-10-161-1/+1
| | | | | This is only ever used within the cpp file, so it can just be an internal function.
* content_archive: Simplify rights ID checkLioncash2018-10-161-2/+2
| | | | This is the same as using std::any_of with an inverted predicate.
* content_archive: Split loading into separate functionsLioncash2018-10-161-250/+278
| | | | | | The constructor alone is pretty large, the reading code should be split into its consistuent parts to make it easier to understand it without having to build a mental model of a 300+ line function.
* content_archive: Pass and take NCASectionHeader instance by referenceLioncash2018-10-161-2/+2
| | | | | Each header is 512 bytes in size, which is kind of an excessive amount to copy all the time when it's possible to avoid doing so.
* content_archive: Move get key log to Trace levelZach Hilman2018-10-131-1/+1
| | | | Avoids printing live keys in the general log.
* file-sys: Default heavy-weight class destructors in the cpp fileLioncash2018-09-201-0/+2
| | | | | | | | | | Several classes have a lot of non-trivial members within them, or don't but likely should have the destructor defaulted in the cpp file for future-proofing/being more friendly to forward declarations. Leaving the destructor unspecified allows the compiler to inline the destruction code all over the place, which is generally undesirable from a code bloat perspective.
* Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi2018-09-151-3/+3
|
* bktr: Fix bucket overlap errorZach Hilman2018-09-041-3/+0
|
* nsp: Fix error masking issue with XCI filesZach Hilman2018-09-041-2/+6
| | | | Now display correct error instead of catch-all MissingProgramNCA
* bktr: Implement IVFC offset shiftingZach Hilman2018-09-041-4/+9
| | | | Fixes base game read errors
* content_archive: Add BKTR header parsing to NCAZach Hilman2018-09-041-15/+156
|
* file_sys: Replace includes with forward declarations where applicableLioncash2018-09-041-0/+4
| | | | | Cuts down on include dependencies, resulting in less files that need to be rebuilt when certain things are changed.
* content_archive: Add update title detectionZach Hilman2018-08-241-0/+8
| | | | This is needed because the title IDs of update NCAs will not use the update title ID. The only sure way to tell is to look for a partition with BKTR crypto.
* xts_encryption_layer: Implement XTSEncryptionLayerZach Hilman2018-08-231-1/+1
|
* loader: Add more descriptive errorsZach Hilman2018-08-101-16/+70
| | | Full list of new errors and descriptions in core/loader/loader.h
* Merge pull request #850 from DarkLordZach/icon-metabunnei2018-08-081-0/+4
|\ | | | | Add Icons and Metadata Support
| * loader: Add icon and title support to XCIZach Hilman2018-08-071-0/+4
| |
* | content_archive: Add support for titlekey cryptographyZach Hilman2018-08-041-7/+37
|/
* Add missing parameter to files.push_back()Zach Hilman2018-08-011-5/+5
|
* Use more descriptive error codes and messagesZach Hilman2018-08-011-2/+8
|
* Use ErrorEncrypted where applicable and fix no keys crashZach Hilman2018-08-011-15/+30
|
* Add missing includes and use const where applicableZach Hilman2018-08-011-2/+2
|
* Make XCI comply to review and style guidelinesZach Hilman2018-08-011-30/+18
|
* Remove files that are not usedZach Hilman2018-08-011-30/+138
|
* RomFS ExtractionZach Hilman2018-07-281-15/+4
|
* content_archive: std::move VirtualFile in NCA's constructorLioncash2018-07-191-1/+4
| | | | | Gets rid of unnecessary atomic reference count incrementing and decrementing.
* Virtual Filesystem 2: Electric Boogaloo (#676)Zach Hilman2018-07-191-0/+167
| | | | | | | | | | * Virtual Filesystem * Fix delete bug and documentate * Review fixes + other stuff * Fix puyo regression
* Revert "Virtual Filesystem (#597)"bunnei2018-07-081-164/+0
| | | | This reverts commit 77c684c1140f6bf3fb7d4560d06d2efb1a2ee5e2.
* Virtual Filesystem (#597)Zach Hilman2018-07-061-0/+164
* Add VfsFile and VfsDirectory classes * Finish abstract Vfs classes * Implement RealVfsFile (computer fs backend) * Finish RealVfsFile and RealVfsDirectory * Finished OffsetVfsFile * More changes * Fix import paths * Major refactor * Remove double const * Use experimental/filesystem or filesystem depending on compiler * Port partition_filesystem * More changes * More Overhaul * FSP_SRV fixes * Fixes and testing * Try to get filesystem to compile * Filesystem on linux * Remove std::filesystem and document/test * Compile fixes * Missing include * Bug fixes * Fixes * Rename v_file and v_dir * clang-format fix * Rename NGLOG_* to LOG_* * Most review changes * Fix TODO * Guess 'main' to be Directory by filename