template <class Elf, bool CanBeExecutable = false>
class PhdrStackObserver
Defined at line 271 of file ../../src/lib/elfldltl/include/lib/elfldltl/phdr.h
Observes PT_GNU_STACK metadata. If CanBeExecutable is true, then the absence
of any PT_GNU_STACK header is conventionally taken to mean that the stack is
executable; if CanBeExecutable is false, then Finish() gives an error if no
header is found or if it reports that the stack is executable (i.e., if
PF_X is set).
Public Methods
template <bool E = CanBeExecutable, typename = std::enable_if_t<!E>>
void PhdrStackObserver<Elf, CanBeExecutable> (std::optional<size_type> & size)
There is only one constructor, but its signature is dependent on
`CanBeExecutable`.
Defined at line 282 of file ../../src/lib/elfldltl/include/lib/elfldltl/internal/../phdr.h
template <bool E = CanBeExecutable, typename = std::enable_if_t<!E>>
void PhdrStackObserver<Elf, CanBeExecutable> (std::optional<size_type> & size)
There is only one constructor, but its signature is dependent on
`CanBeExecutable`.
Defined at line 282 of file ../../src/lib/elfldltl/include/lib/elfldltl/phdr.h
template <bool E = CanBeExecutable, typename = std::enable_if_t<E>>
void PhdrStackObserver<Elf, CanBeExecutable> (std::optional<size_type> & size, bool & executable)
Defined at line 285 of file ../../src/lib/elfldltl/include/lib/elfldltl/internal/../phdr.h
template <bool E = CanBeExecutable, typename = std::enable_if_t<E>>
void PhdrStackObserver<Elf, CanBeExecutable> (std::optional<size_type> & size, bool & executable)
Defined at line 285 of file ../../src/lib/elfldltl/include/lib/elfldltl/phdr.h
template <class Diagnostics>
bool Finish (Diagnostics & diagnostics)
Defined at line 289 of file ../../src/lib/elfldltl/include/lib/elfldltl/phdr.h