rizin
rizin copied to clipboard
Add support for loading debug information from `debuginfod`
Fedora 35 release that is scheduled to the end of 2021 will use Debuginfod by default for storing debug information for the binaries:
- https://fedoraproject.org/wiki/Changes/DebuginfodByDefault
With GNU Binutils 2.34 comes debuginfod support, which is the HTTP server catching our eye while the debuginfod server is distributed as part of the latest elfutils package. This isn't for a general purpose web server thankfully but is an HTTP server for distributing ELF/DWARF debugging information and source code. With debuginfod enabled, Binutils'
readelf
andobjdump
utilities can query the HTTP server(s) for debug files that cannot otherwise be found. Enabling this option requires building Binutils using--with-debuginfod
.
See https://developers.redhat.com/blog/2019/10/14/introducing-debuginfod-the-elfutils-debuginfo-server/ for more information.
- https://sourceware.org/elfutils/Debuginfod.html
- https://wiki.debian.org/Debuginfod
- https://fedoraproject.org/wiki/Debuginfod
Depends on https://github.com/rizinorg/rizin/issues/1805
Originally posted by @XVilka in https://github.com/rizinorg/rizin/issues/907#issuecomment-811727583
LLVM added support for Debuginfod as well: https://github.com/llvm/llvm-project/commit/36f01909a0e29c1014301ed6835687a84bf0e9fa
probably should be worth to use this with flirt, so we can easily create signatures from this.
@XVilka I guess we should postpone this to 0.7.0, right? I don't think there's a way this is gonna lend before it.