Andreas Kling
|
f23b29f605
LibELF: Move DynamicObject::lookup_symbol() to DynamicLoader
|
4 years ago |
Andreas Kling
|
a43910acc3
LibELF: Make SymbolLookupResult::address a VirtualAddress
|
4 years ago |
Andreas Kling
|
1997d5de1a
LibELF: Make symbol lookup functions return Optional<Symbol>
|
4 years ago |
Andreas Kling
|
46c3ff2acf
LibELF: Remove "always bind now" global flag
|
4 years ago |
Andreas Kling
|
ba1eea9898
LibELF+DynamicLoader: Rename DynamicObject::construct() => create()
|
4 years ago |
Andreas Kling
|
01f1e480e5
LibELF: Fix various clang-tidy warnings
|
4 years ago |
Andreas Kling
|
0c0127dc3f
LibELF: Use StringView instead of "const char*" in dynamic linker code
|
4 years ago |
Andreas Kling
|
08476e7fe7
DynamicLoader: Always make .data segment read+write
|
4 years ago |
Andreas Kling
|
fa4c249425
LibELF+Userland: Enable RELRO for all userland executables :^)
|
4 years ago |
Andreas Kling
|
0d3866e84c
DynamicLoader: Some ELF data segments were allocated too small
|
4 years ago |
Andreas Kling
|
40a5487bab
LibELF: Unmap and close the main executable after dynamic load
|
4 years ago |
AnotherTest
|
09a43969ba
Everywhere: Replace dbgln<flag>(...) with dbgln_if(flag, ...)
|
4 years ago |
AnotherTest
|
53ce923e10
Everywhere: Fix obvious dbgln() bugs
|
4 years ago |
Andreas Kling
|
4df3a34bc2
LibELF: Only set up PLT trampoline for objects with a PLT
|
4 years ago |
Andreas Kling
|
349cf6ad67
LibELF: Randomize the VM reservation (so we don't break ASLR)
|
4 years ago |
Andreas Kling
|
3a3270eb68
LibELF: Make a dummy VM reservation before mapping dynamic objects
|
4 years ago |
Andreas Kling
|
1d394b8a76
LibELF: Close dynamic objects after mapping and linking them
|
4 years ago |
Andreas Kling
|
e313323317
LibELF: Split the DynamicLoader's loading mechanism into two steps
|
4 years ago |
Andreas Kling
|
36525c0572
LibELF: Assert on multiple calls to DynamicLoader::load_from_image()
|
4 years ago |
Andreas Kling
|
2b862e4569
LibELF: Don't validate ELF twice in DynamicLoader
|
4 years ago |
Andreas Kling
|
68576bcf1b
LibELF: Call mmap() before constructing the DynamicLoader object
|
4 years ago |
Jorropo
|
8f8bbd1bcd
DynamicLoader: load_program_headers use variables to store regions (#5173)
|
4 years ago |
Andreas Kling
|
d988bd86e4
LibELF: Map text segments read-only at first
|
4 years ago |
Andreas Kling
|
3438b77aa4
LibELF: Tidy up DynamicLoader::load_program_headers() a bit
|
4 years ago |
Jorropo
|
c33d50872e
LibELF: perror on failed mmap in load_program_headers (#5159)
|
4 years ago |
Andreas Kling
|
322c161ee4
LibELF: Implement ASLR for shared libraries :^)
|
4 years ago |
Andreas Kling
|
67bc5e0bbd
DynamicLoader: Pass MAP_FIXED to mmap() where applicable
|
4 years ago |
Andreas Kling
|
adcc1c1eff
LibELF: Cache the DynamicObject in DynamicLoader
|
4 years ago |
Andreas Kling
|
41d8734288
LibELF: Use Optional<SymbolLookupResult> as a return type
|
4 years ago |
Andreas Kling
|
a5de46684b
LibELF: Convert String::format() to String::formatted()
|
4 years ago |