@astrid I took this from a 5.6.1 fedora build of liblzma. But it should also be extractable from that .o.
Top-level
@astrid I took this from a 5.6.1 fedora build of liblzma. But it should also be extractable from that .o. 5 comments
@astrid The symbol names from the .o are just fanfiction, they're just made to look like legit liblzma symbols. But yes, the function at 0x1860 in the 5.6.0 .o seems to be what I call bd_elf_lookup_hash. 0x0a8a0 is what I call bd_hash (even though I now know it's not a hash). @astrid The trie? In liblzma_la-crc64-fast.o it's at 0xC340 (has_child masks) and 0xAEE0 (node info). Here is the parser, but so far I've only seen one version of this: https://gist.github.com/Riatre/527a34d2e4e0ed4770353a3cc4a6e136 (Offsets hardcoded here is for https://snapshot.debian.org/archive/debian/20240321T160517Z/pool/main/x/xz-utils/liblzma5_5.6.0-0.2_amd64.deb) |
@q3k It looks like there are a few more symbols in the .o file from there - I think I found the function you call bd_elf_lookup_hash (at 0x1860)? it's called crc_init in there, which isn't a name that exists in the xz source itself