-
Notifications
You must be signed in to change notification settings - Fork 514
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 .gnu_debuglink DWARF5 Section #525
Conversation
The PR looks good. We'd like a test binary, though. Good point re: the bitness test. It was my doing; I observed the issue on a MachO binary and made a test out of that instead of trying to reproduce on an ELF one. I'll try to supply a less fragile test. The purpose of Looks like you ignore the padding and the checksum altogether. It's OK to not parse the section to the very end, you know :) |
Hi, I've added a test as requested. I tried to keep the structure and format consistent with the other tests, I hope it's okay. Regarding the differences between the two sections, I admit that it remains a bit unclear to me as well. From what I understand, the I parsed padding and checksum for consistency with what I saw for the implementation of the |
On 12/13/23 15:05, Gabriele Digregorio wrote:
Regarding the differences between the two sections, I admit that it
remains a bit unclear to me as well. From what I understand, the
|.gnu_debugaltlink| section is related to the use of tools such as dwz
and is not really part of the standard, unlike |.gnu_debuglink| which is
part of the standard.
.gnu.debuglink is not part of the DWARF standard.
It is not a section that the DWARF standard mentions.
David Anderson
|
What's the holdup for this one? |
@sevaa LGTM Is this LGTY? |
I thought I approved this (informally) in my Dec 1 comment. I don't think I have access to the Github review button here. |
Address #523
I've added support for the .gnu_debuglink section in DWARF5 and made it compliant with the follow_links option. This involved modifying the DWARFInfo constructor to include the new section and creating a new structure in structs.py.
Then, I ran all the tests and updated test/test_refaddr_bitness.py to align with the changes in the constructor structure. All tests were executed successfully.