aboutsummaryrefslogtreecommitdiff
path: root/src/core/launch_timestamp_cache.cpp
diff options
context:
space:
mode:
authorTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-30 11:40:49 -0400
committerTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-30 11:40:58 -0400
commit37893c68314360071261305a2f8527d8efde8fde (patch)
tree3e595ba7a6b3dc132176f4f0a4c9a47657f01fb9 /src/core/launch_timestamp_cache.cpp
parentf362528c0447c491bfe00c0bdd5d8c245396a24c (diff)
ro: read Switch 2 NRR hash lists where they are
Switch 2 NRRs carry 3072-bit keys and signatures, so the fields after them (program id, size, kind, hash list offset and count) sit 0x180 bytes later than in a Switch 1 NRR: hash list offset and count at 0x4c0, hashes from 0x4d0 (Kirby Air Riders, Minecraft, Mario Tennis Fever). RegisterModuleInfo read signature bytes as the hash count: Kirby Air Riders read 51 GB of "hashes" (host memory ran out), Minecraft threw bad_alloc and the process ended. Read the fields at the Switch 2 offsets for Switch 2 processes, and reject an NRR whose hash list does not fit inside it.
Diffstat (limited to 'src/core/launch_timestamp_cache.cpp')
0 files changed, 0 insertions, 0 deletions