Skip to content

Finish elf_shared_objector_iterator API #15

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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