Commit Graph

138 Commits

Author SHA1 Message Date
Maschell
29c90bc943 relocator: Fix KiIsEffectiveRangeValid to return a boolean. 2020-06-01 16:36:00 +02:00
Maschell
40359e1211 relocator: Save ordered list of modules based on dependencies, move hook calling into a new file 2020-06-01 16:35:34 +02:00
Maschell
3b94c82ed2 relocator: add missing KiPhysicalToEffectiveUncached address 2020-05-31 02:25:37 +02:00
Maschell
0225c49e3a reloactor: Add KiIsEffectiveRangeValid patch 2020-05-31 02:25:07 +02:00
Maschell
6695815a6e relocator: reduce number of warning in the logs by using our memory mapping test before the real one 2020-05-31 02:24:18 +02:00
Maschell
9809b1b48d relocator: Fix compling 2020-05-31 02:23:31 +02:00
Maschell
82dc811f42 relocator: Patch the kernel to allow usage of our custom memory mapping 2020-05-30 22:02:21 +02:00
Maschell
166ecb6bda relocator: Replace the malloc/free function of modules with the ones from the memory_mapping module (but not for the memory_mapping module itself and only after the inital setup) 2020-05-30 22:01:55 +02:00
Maschell
ce14fc8a6e relocator: Make sure to call the memory_mapping main() function at first 2020-05-30 22:00:17 +02:00
Maschell
8d46cf5303 relocator: Save the address of the PhysicalToEffective + EffectiveToPhysical function from the memory module is present. 2020-05-30 21:59:42 +02:00
Maschell
f6031a0ef0 relocator: Add initial support for kernel function patches 2020-05-30 21:57:20 +02:00
Maschell
74b3394180 relocator: remove logs when using a custom findexport 2020-05-30 21:56:23 +02:00
Maschell
e925f0bdc6 relocator: Fix the logging when patching functions 2020-05-30 21:55:47 +02:00
Maschell
a3310579b8 Call module init hooks 2020-05-29 19:27:30 +02:00
Maschell
28926f6a9b Fix flushing the cache are doing the relocations 2020-05-29 18:26:19 +02:00
Maschell
6cb4f4e358 Add initial support for storing and loadings hooks of modules (but not calling them) 2020-05-29 17:36:10 +02:00
Maschell
02441dab81 relocator: Add missing ExportData loading for ModuleData in persistence 2020-05-29 17:31:53 +02:00
Maschell
c52592c016 relocator: Remove unused ModuleDataPersistence::saveModuleData function 2020-05-29 17:30:44 +02:00
Maschell
cd3065b9e5 ModuleDataPersistence: Add missing export name loading 2020-05-29 17:30:10 +02:00
Maschell
c6c12798ea Fix loading ModuleData from persistence 2020-05-29 17:29:17 +02:00
Maschell
fa68c980af Fix support for loading multiple modules 2020-05-28 21:45:44 +02:00
Maschell
b9064883a2 OSFatal on failed find export 2020-05-28 20:26:02 +02:00
Maschell
db3fe907ef Change way of detecting relocations of imports 2020-05-28 20:17:28 +02:00
Maschell
51fc349237 Add support for WUMS, support for handling and resolving exports 2020-05-17 21:14:27 +02:00
Maschell
2ee3011ae8 Formatting 2020-05-17 19:05:51 +02:00
Maschell
373579cd6f Inital support for patching the OSDynload_Acquire and OSDynload_FindExport 2020-05-17 13:14:19 +02:00
Maschell
ee045acdc8 Save information about sections of a module 2020-05-17 13:13:24 +02:00
Maschell
b526acbded Allocate everything on the stack instead of the heap 2020-05-17 13:11:52 +02:00
Maschell
d36ad9bf3d Change address/endAddress in ModuleData to startAddress/endAddress 2020-05-03 00:06:11 +02:00
Maschell
48b5f853e3 Add the size and address to the ModuleData 2020-04-29 12:35:40 +02:00
Maschell
ebf09003d3 [relocator] Re-use the header from the SetupPayload and move some files into /utils 2020-04-29 12:35:13 +02:00
Maschell
7fe051d2cf Added some logging 2020-04-29 12:06:47 +02:00
Maschell
7b8a421d7a Remove the ../source entry from the Makefile of the relocator 2020-04-29 12:05:39 +02:00
Maschell
13e31e31f3 Fix a softlock by implementing the memory functions properly 2020-04-29 12:04:33 +02:00
Maschell
06cb0efe34 Fix the address of the module_information_t struct 2020-04-29 11:43:45 +02:00
Maschell
65260dbaa0 Fix logging the wrong filepath 2020-04-29 11:10:41 +02:00
Maschell
7611a54a63 Fix the path for modules 2020-04-28 15:05:45 +02:00
Maschell
9a4068d15b first commit 2020-04-28 14:43:07 +02:00