summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibELF/Validation.cpp
AgeCommit message (Collapse)Author
2021-07-01LibELF: Check for missing PT_LOAD alignment header valueIdan Horowitz
This ensures we dont divide by zero when checking for valid alignment values.
2021-06-29LibELF: Don't validate PT_LOAD alignment in ET_CORE filesAndreas Kling
This was causing CrashDaemon to choke on our coredumps. Note that we didn't care about the validation failures before this change either, this patch simply reorders the checks to avoid divide-by-zero when validating an ET_CORE file.
2021-06-28Kernel+LibELF: Add support for validating and loading ELF64 executablesGunnar Beutner
2021-06-24 LibELF: Fix missing includeHendiadyoin1
A few files are expecting that someone brings PAGE_SIZE from possibly the Kernel with them
2021-05-30AK+Userland: Use akaster@serenityos.org for my copyright headersAndrew Kaster
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-18LibC+LibELF: Implement support for the dl_iterate_phdr helperGunnar Beutner
This helper is used by libgcc_s to figure out where the .eh_frame sections are located for all loaded shared objects.
2021-04-18LibElf: Allow PT_GNU_EH_FRAME program headersGunnar Beutner
These are built when compiling an executable with exception support.
2021-03-29LibElf+readelf: Parse ELFs with no program headers correctlyIdan Horowitz
This simply fixes a check which assumed the program header count was always non zero.
2021-02-23Everywhere: Rename ASSERT => VERIFYAndreas Kling
(...and ASSERT_NOT_REACHED => VERIFY_NOT_REACHED) Since all of these checks are done in release builds as well, let's rename them to VERIFY to prevent confusion, as everyone is used to assertions being compiled out in release. We can introduce a new ASSERT macro that is specifically for debug checks, but I'm doing this wholesale conversion first since we've accumulated thousands of these already, and it's not immediately obvious which ones are suitable for ASSERT.
2021-01-30LibELF: Add a bunch of overflow checks in ELF validationAndreas Kling
2021-01-16LibELF: validate_program_headers: Validate PT_INTERP header p_filesz > 1Brendan Coles
2021-01-12Libraries: Move to Userland/Libraries/Andreas Kling