-
-
Notifications
You must be signed in to change notification settings - Fork 595
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for .relr.dyn #1058
Comments
Edit: Looks like my issue is #626 I think I'm struggling with the same issue. On the attached binaries, lief gives the correct output for an x86 version, while giving empty values for x64 / arm64 versions:
The last item (0x8dc) should be the first entry of INIT_ARRAY. |
@junghee @TheDauntless LIEF is not applying any relocation in the binary so even if the relocation are supported, you will still observe the 0. |
Describe the bug
The latest version of LIEF doesn't seem to support
.relr.dyn
(an array of relocation entries that encode relative relocations that do not require explicit addends or other information), which seems to be a relatively new feature that enables to reduce file sizes.To Reproduce
librt.so.1.zip
Expected behavior
The readelf on ubuntu22 shows:
The addresses are the entries in
.init_array
andfini_array
, and the first entry of the section.data
, respectively.The LIEF version 0.14.1 fails to provide relocation information for those entries.
Environment (please complete the following information):
Additional context
https://maskray.me/blog/2021-10-31-relative-relocations-and-relr
The text was updated successfully, but these errors were encountered: