Validation.h 499 B

1234567891011121314151617
  1. /*
  2. * Copyright (c) 2020, Andrew Kaster <akaster@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <AK/StringBuilder.h>
  8. #include <LibC/elf.h>
  9. namespace ELF {
  10. bool validate_elf_header(ElfW(Ehdr) const& elf_header, size_t file_size, bool verbose = true);
  11. ErrorOr<bool> validate_program_headers(ElfW(Ehdr) const& elf_header, size_t file_size, ReadonlyBytes buffer, StringBuilder* interpreter_path_builder = nullptr, bool verbose = true);
  12. } // end namespace ELF