dolphin/Source/Core/DiscIO
JosJuice 2faa9760d3 Prevent path traversal in NANDImporter::ProcessEntry
Reported by MrSynAckster. A specifically crafted NAND dump could use
path traversal to overwrite files on the host file system.

This is also an accuracy fix for importing NAND dumps that contain
file names that Dolphin is supposed to escape. Some games' save files
are affected.
2026-05-30 11:51:14 +02:00
..
Blob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
Blob.h DiscIO: Add IsCached virtual function to BlobReader. 2026-02-15 20:14:15 -06:00
CachedBlob.cpp DiscIO: Add IsCached virtual function to BlobReader. 2026-02-15 20:14:15 -06:00
CachedBlob.h DiscIO: Add CachedBlobReader which takes another BlobReader and reads it into memory in the background. 2025-11-23 05:17:22 -06:00
CISOBlob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
CISOBlob.h DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
CMakeLists.txt Merge pull request #14174 from JoshuaVandaele/minizips-cmake 2025-12-22 13:36:52 -05:00
CompressedBlob.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
CompressedBlob.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
DirectoryBlob.cpp Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
DirectoryBlob.h Improve usage of std::move and const references parameters 2026-04-17 12:39:46 +02:00
DiscExtractor.cpp Remove NKit data when extracting a GCN/Wii disc volume 2023-06-02 01:11:50 -05:00
DiscExtractor.h Remove unused imports 2026-01-25 16:12:15 +01:00
DiscScrubber.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
DiscScrubber.h Remove unused imports 2026-01-25 16:12:15 +01:00
DiscUtils.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
DiscUtils.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
Enums.cpp Enums: Unhandled switch statement 2026-02-15 20:14:15 -06:00
Enums.h Added Triforce support 2026-02-15 20:14:14 -06:00
FileBlob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
FileBlob.h DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
Filesystem.cpp treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
Filesystem.h Remove unused imports 2026-01-25 16:12:15 +01:00
FileSystemGCWii.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
FileSystemGCWii.h Remove unused imports 2026-01-25 16:12:15 +01:00
GameModDescriptor.cpp DiscIO: Remove redundant qualifiers 2025-04-22 13:54:10 +02:00
GameModDescriptor.h Core: Add a Maker field for GameModDescriptors. 2022-01-02 06:06:53 +01:00
LaggedFibonacciGenerator.cpp Simplify std::copy with std::copy_n 2024-10-07 15:34:56 -07:00
LaggedFibonacciGenerator.h Fix all uninitialized variable warnings (C26495) 2021-10-13 12:32:16 -07:00
MultithreadedCompressor.h Common: Replace Result with C++23's std::expected. 2026-01-17 16:58:45 -06:00
NANDImporter.cpp Prevent path traversal in NANDImporter::ProcessEntry 2026-05-30 11:51:14 +02:00
NANDImporter.h Improve NAND import progress dialog 2026-04-04 22:02:45 +01:00
NFSBlob.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
NFSBlob.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
RiivolutionParser.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
RiivolutionParser.h DiscIO: Pass parameters by constant reference 2025-04-20 08:26:09 +02:00
RiivolutionPatcher.cpp Replace find(x) != npos with contains(x) - Core 2026-04-20 09:36:08 +02:00
RiivolutionPatcher.h DiscIO: Make functions constant 2025-05-16 19:11:39 +02:00
ScrubbedBlob.cpp Added CopyReader to BlobReader and all subclasses 2023-10-01 09:04:06 -04:00
ScrubbedBlob.h DiscIO: Make classes final 2025-04-19 09:05:22 +02:00
SplitFileBlob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
SplitFileBlob.h DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
TGCBlob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
TGCBlob.h DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
Volume.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
Volume.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
VolumeDisc.cpp Triforce: Check only first byte in region flag. 2026-03-15 18:43:00 +00:00
VolumeDisc.h Triforce: Code cleanups. 2026-02-15 20:14:14 -06:00
VolumeFileBlobReader.cpp VolumeFileBlobReader: Define default destructor in source file 2026-01-04 17:56:08 -08:00
VolumeFileBlobReader.h VolumeFileBlobReader: Define default destructor in source file 2026-01-04 17:56:08 -08:00
VolumeGC.cpp Triforce: Check only first byte in region flag. 2026-03-15 18:43:00 +00:00
VolumeGC.h Added Triforce support 2026-02-15 20:14:14 -06:00
VolumeVerifier.cpp VolumeVerifier: Add extra validity checks for ticket and TMD 2026-04-20 20:26:31 +02:00
VolumeVerifier.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
VolumeWad.cpp DiscIO: Add extra IsValid checks for VolumeWAD::m_tmd 2026-04-20 20:18:36 +02:00
VolumeWad.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
VolumeWii.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
VolumeWii.h Make overriding explicit and remove redundant virtual specifiers on overriding destructors - Core & UnitTests 2025-05-01 15:00:37 +02:00
WbfsBlob.cpp DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
WbfsBlob.h DiscIO: Make all BlobReader implementations use DirectIOFile to make CopyReader functionality thread safe. 2025-11-09 03:08:14 -06:00
WIABlob.cpp Use more std::span arguments 2026-03-23 23:55:09 +01:00
WIABlob.h Use more std::span arguments 2026-03-23 23:55:09 +01:00
WIACompression.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
WIACompression.h Make overriding explicit and remove redundant virtual specifiers on overriding destructors - Core & UnitTests 2025-05-01 15:00:37 +02:00
WiiEncryptionCache.cpp treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
WiiEncryptionCache.h Remove unused imports 2026-01-25 16:12:15 +01:00
WiiSaveBanner.cpp Remove unused imports 2026-01-25 16:12:15 +01:00
WiiSaveBanner.h WiiSaveBanner: fall back to $userdir/Load/WiiBanners 2025-07-04 23:15:50 +01:00