reloc.h 599 B

123456789101112131415161718192021222324252627282930313233
  1. #include <string.h>
  2. #include <elf.h>
  3. #define LDSO_ARCH "i386"
  4. static int remap_rel(int type)
  5. {
  6. switch(type) {
  7. case R_386_32:
  8. return REL_SYMBOLIC;
  9. case R_386_PC32:
  10. return REL_OFFSET;
  11. case R_386_GLOB_DAT:
  12. return REL_GOT;
  13. case R_386_JMP_SLOT:
  14. return REL_PLT;
  15. case R_386_RELATIVE:
  16. return REL_RELATIVE;
  17. case R_386_COPY:
  18. return REL_COPY;
  19. case R_386_TLS_DTPMOD32:
  20. return REL_DTPMOD;
  21. case R_386_TLS_DTPOFF32:
  22. return REL_DTPOFF;
  23. case R_386_TLS_TPOFF:
  24. return REL_TPOFF;
  25. case R_386_TLS_TPOFF32:
  26. return REL_TPOFF_NEG;
  27. case R_386_TLS_DESC:
  28. return REL_TLSDESC;
  29. }
  30. return 0;
  31. }