Skip to content

Finish elf_shared_objector_iterator API #15

@elfmaster

Description

@elfmaster

Currently the elf_shared_object_iterator API which is contained within both libelfmaster.c and internal.c, is already fairly well developed with several flags that determine the behavior, method, and performance of the iterator that can be used based on the use-case. Nevertheless it still requires several important capabilities:

  1. Respect DT_ORIGIN (Which is the value of $CWD/, and it looks there first)
  2. Respect DT_RUNPATH/DT_RPATH which specifies an explicit path for the linker to try first during resolution. I.E DT_RUNPATH: /home/elfmaster/libs would be the same as setting LD_LIBRARY_PATH=/home/elfmaster/libs -- the only difference being that DT_RUNPATH is apart of the binary and is therefore permanent.
  3. Perform hard disk lookups in the following order:
DT_RUNPATH
DT_ORIGIN
/lib/x86_64-linux-gnu/
/usr/lib/x86_64-linux-gnu/
/usr/lib
/lib

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions