Quantcast
Channel: Planet Apache
Viewing all articles
Browse latest Browse all 9364

Ortwin Glück: [Code] openssl version information in ELF binaries

$
0
0
It seems that on Debian the OpenSSL libraries (libssl.so, libcrypto.so) contain symbol version information. Binaries linked on a Debian system against OpenSSL may thus contain version requirements on these shared objects.

Gentoo (and other distributions) does not have OpenSSL built with version information. Using a Debian binary (like spotify) on such a system causes ldd to complain about the missing version information:
/usr/lib64/libcrypto.so.1.0.0: no version information available
/usr/lib64/libssl.so.1.0.0: no version information available
Gentoo's revdep-rebuild thus detects the binary as broken. To fix this issue we can modify the binary and remove the version information in question.

I have hacked up a little Java utility that does just that. It should work on most binaries that link against openssl. Yes it's Java, as it's the language I'm fluent in. Feel free to convert it to C.

Download ElfFix.

Viewing all articles
Browse latest Browse all 9364

Trending Articles