ehlo,
dlopen test failed when I was testing patches for krb5 CFLAGS with custom build
of MIT kerberos.
sh-4.2$ ./dlopen-tests
Running suite(s): dlopen
0%: Checks: 1, Failures: 1, Errors: 0
src/tests/dlopen-tests.c:129:F:dlopen:test_dlopen_base:0:
Error opening libsss_ipa.so: [dlopen() failed: ./sssd/.libs/libsss_ipa.so:
undefined symbol: selinux_policy_root].
Function selinux_policy_root is used in the module ipa_selinux.c
by macro selogin_path,
sh-4.2$ objdump -T /usr/lib64/sssd/libsss_ipa.so | grep selinux_policy_root
0000000000000000 D *UND* 0000000000000000 selinux_policy_root
But libsss_ipa.so was not linked with selinux library
It was not problem because another libraries depens on selinux.so
libsss_ipa.so -> libk5crypto.so -> libkrb5support.so -> libselinux.so
We should not rely on dependencies of other libraries.
Before patch:
sh-4.2$ objdump -p /usr/lib64/sssd/libsss_ipa.so | grep selinux
After patch:
sh-4.2$ objdump -p /usr/lib64/sssd/libsss_ipa.so | grep selinux
NEEDED libselinux.so.1
The simple patch is attached.
LS
Show replies by date