Commit graph

289 commits

Author SHA1 Message Date
Megamouse
ba12de867e static analysis: fix memory leak in decompress 2025-03-05 00:12:30 +01:00
Megamouse
a8fc3f5f74 static analysis: more const 2025-03-05 00:12:30 +01:00
Elad
207ee59acd PPU Analyzer: Firmware/import caller analysis and KLIC finding pass 2025-02-27 12:32:21 +02:00
Elad
796a237128 PKG: Refactor and proper support for IDU 2025-02-22 15:01:47 +02:00
Elad
86a832da29 unpkg: Add support for IDU packages 2025-02-21 17:25:23 +02:00
RipleyTom
cd87a64621 Headers cleanup 2025-02-11 20:38:35 +01:00
Megamouse
3187dc816e Fix some warnings 2025-02-02 17:06:39 +01:00
oltolm
2b0f786b2d
Fix std::basic_string warnings (#16261) 2024-11-11 21:54:44 +02:00
Megamouse
2262ac1684 Qt: Replace QMap with std::map
This should reduce the amount of string conversions during list refreshes
2024-11-06 09:34:32 +01:00
MSuih
b4e4aa9822
Improve error message when update cannot be installed due to version mismatch (#15773)
* Show the relevant versions whenever update fails to install due to version difference
2024-07-07 15:23:25 +02:00
Eladash
806758d06f Fix NPD files decryption in decryption tool 2024-03-24 16:19:06 +02:00
Eladash
580f9bf03a GUI: Progress Dialog On Save State Creation 2024-03-24 16:19:06 +02:00
Megamouse
18983f5476 Fix warnings: Remove unused decryption code 2024-02-28 14:25:20 +01:00
Eladash
34e945128f Crypto\EDATA: Optimize decrypt_block to avoid an allocation 2024-02-14 15:11:52 +02:00
Eladash
883f2e92ae EDATA: Add more logging 2024-02-14 15:11:52 +02:00
Eladash
ed66e9e9b9 Fix EDATADecrypter::ReadData 2024-02-14 15:11:52 +02:00
Eladash
f87e11d16a Savestates/sys_fs: Save NPDRM decryption key 2024-02-14 15:11:52 +02:00
Eladash
40c51a1f05 Crypto/unedat.cpp: remove extract_all_data 2024-02-05 21:56:04 +02:00
Eladash
a6c2e995af Crypto/PKG installer: Fix potential RAM shortage when extracing EDAT files 2024-02-05 21:56:04 +02:00
Eladash
596e671973 Crypto/sys_fs: Fix potential RAM shortage in NPDRM decryption
Previous code was structured very naively: if 8GB read is requested, it would allocate 8GB of memory. Without considering recycling memory for each block.
2024-02-05 21:56:04 +02:00
Eladash
d38b2eb8ef Crypto/sys_fs: Remove some seek operations 2024-02-05 21:56:04 +02:00
Megamouse
59c58aa3cf fix some warnings 2023-12-30 19:07:35 +01:00
Eladash
90b6f5613e Fix some warnings 2023-12-19 15:34:07 +02:00
Eladash
9abf0b7176 Savestates: Asynchronous compression 2023-11-28 16:46:44 +02:00
Eladash
ac19a50f5f Rewrite global zipping buffer function
Take advantage of the new method, remove a method that is not recommended for use.
2023-11-28 16:46:44 +02:00
Eladash
f60bdbaece Savestates: Compressed state files 2023-11-27 12:36:17 +02:00
Eladash
2db607c716 Replace some fmt::format with fmt::append 2023-11-10 08:45:49 +02:00
Megamouse
ecfa77f6e7 unzip: check deflateInit and inflateInit results 2023-10-25 21:44:31 +02:00
Megamouse
76629e1b52 Qt: Allow to use .gz files in Log viewer
Log viewer can open .gz files
Log viewer can save log as .gz
Refactored most instances of zip and unzip code to seperate functions
2023-10-13 07:45:16 +02:00
Eladash
b900c43ceb PPU: Precompile only encrypted executeables
Improve sys_prx_load_module and sys_overlay_load_module error checking.
2023-09-02 22:14:53 +03:00
Eladash
af850dac99 Crypto: Fix endianess, avoid crashing on invalid values 2023-08-31 01:32:28 +02:00
Eladash
8057773c4f Fix decrypt_binaries_t::done() 2023-08-03 16:19:55 +03:00
Eladash
eecadab387 Implement fs::file::get_id()
File descripor ID with 2 provided ways to compare between them:
1. is_mirror_of():
 Test if identical:
  For example: when LHS writes one byte to a file at X offset, RHS file be able to read that exact byte at X offset)

2. is_coherent_with():
 Test if both files point to the same file:
  For example: if a file descriptor pointing to the complete file exists and is being truncated to 0 bytes from non-
  -zero size state: this has to affect both RHS and LHS files.
2023-07-17 08:09:09 +03:00
Megamouse
43cfb3cd10 ecdsa: tiny optimization for key and curve 2023-07-16 09:32:39 +02:00
Megamouse
de15c9746f ecdsa: clean up some code 2023-07-16 09:32:39 +02:00
oltolm
0c94606fcf
Make compile with msvc, clang and gcc on Windows 2023-07-11 21:40:30 +03:00
Megamouse
d662a39a12 PPUAnalyser: fix std::move nonsense 2023-06-14 11:05:00 +03:00
Eladash
c0e97b4e96 Qt: Improve PS3 Binaries Decryption tool 2023-06-11 00:40:14 +02:00
brian218
ad22cf5051 unself.cpp: Always reset the old SELF header information before loading 2023-06-08 18:18:57 +02:00
Eladash
636bde6343 Logs: Fix trailing space, nbsp and unintended character 2023-06-06 09:48:27 +02:00
Megamouse
500f7901ac unself: rename SCEVersionInfo to version_header 2023-04-21 17:56:25 +02:00
Megamouse
5fb716fc21 unself: rename SectionInfo to segment_ext_header 2023-04-21 17:56:25 +02:00
Megamouse
31ef970f23 unself: some more documentation 2023-04-21 17:56:25 +02:00
Megamouse
a770eaf500 unself: rename AppInfo to program_identification_header 2023-04-21 17:56:25 +02:00
Megamouse
e171f3af41 unself: rename SelfHeader to ext_hdr 2023-04-21 17:56:25 +02:00
Megamouse
6d7d3fff6d Improve some decryption log messages 2023-03-05 02:55:59 +01:00
Megamouse
fc21ece784 pkg install: return correct error if possible. Add more early outs and skip workers on error, 2023-03-02 23:27:20 +01:00
Margen67
5bb89328d0 Remove whitespace 2023-02-15 08:58:02 +01:00
Megamouse
13ef4c1236 Clarify unknown type log message 2023-02-05 09:36:56 +01:00
Megamouse
68dd25a4a5 Replace std::filesystem::u8path with TODO 2023-02-05 09:36:56 +01:00