Commit Graph
20 Commits
Author SHA1 Message Date
Tillmann Karras f06aef4f83 Improve NAND import progress dialog
Now with cancel button and an actual progress bar. For simplicity, we do
two passes on the progress bar, one for loading the NAND into memory and
one for extracting it. The user directory is likely on an SSD, making
the extraction pass invisibly fast.
2026-04-04 22:02:45 +01:00
Dr. Dystopia 9dfcbcecff DiscIO: Make functions constant 2025-05-16 19:11:39 +02:00
Dr. Dystopia 07ad189b4f DiscIO: Pass parameters by constant reference 2025-04-20 08:26:09 +02:00
Admiral H. Curtiss c97c80d1cb NANDImporter: Check data bounds. 2023-04-02 03:45:34 +02:00
Shawn Hoffman 46ad8b9d68 Implement hw accelerated AES 2022-08-01 10:00:42 -07:00
Starsam80 41a3368889 NANDImporter: Only read the AES key once
There is no need to constantly reset the key for every file entry.
2022-03-01 19:24:59 -07:00
Starsam80 80012ae253 NANDImporter: Make superblocks less magical
Create a struct describing the superblock layout and use it directly
without needing to specify offsets and such.
2022-03-01 19:24:59 -07:00
Starsam80 73151a5753 NANDImporter: Don't pass paths if we don't need to 2022-03-01 19:24:59 -07:00
Starsam80 6758c77c39 NANDImporter: Reduce recursion in ProcessEntry
It also simplifies the code flow, as it no longer goes backwards
through the filesystem chain.
2022-03-01 19:24:59 -07:00
Starsam80 2ccd974471 NANDImporter: Improve NANDFSTEntry
`uid` is a u32, not a u16. Also, everything is big endian, so we
can simplify the code a little bit.
2022-03-01 19:24:59 -07:00
Starsam80 643057fea2 NANDImporter: Make a class variable for the NAND root 2022-03-01 15:07:59 -07:00
Pierre Bourdon e149ad4f0a treewide: convert GPLv2+ license info to SPDX tags
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
Techjar ff972e3673 Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
Leo Lam 91dac03c45 Merge pull request #6148 from leoetlino/null-bug
NANDImporter: Construct strings correctly
2017-10-29 10:30:03 +01:00
Léo Lam 7aa083388b NANDImporter: Construct strings correctly
Use std::string(cstring, strnlen(cstring, max_length)) instead of
trying to remove extra null characters manually, which is a bit
ugly and error prone.

And indeed, the original code contained a bug which would cause
extra NULLs to not be removed at all if the string did not
end with a NULL -- causing issues down the road when constructing
paths for sub-entries.
2017-10-28 22:40:05 +02:00
Léo Lam 96d7c39891 NANDImporter: Add support for dumps that don't include keys
This adds support for NAND images that only include the NAND
(i.e. without the OTP/SEEPROM dump appended at the end of the file).
2017-10-28 21:27:18 +02:00
Starsam80 5399311a13 NANDImporter: Improve certificate extraction 2017-06-19 01:23:58 -06:00
Starsam80 3229cde292 NANDImporter: Add logging 2017-05-19 16:36:06 -06:00
Starsam80 618eb9f743 NANDImporter: Use a indeterminate progress meter 2017-05-19 16:31:47 -06:00
Starsam80 6bccc13f3b Add BootMii NAND import functionality 2017-04-09 13:14:05 -06:00