Hi List,

The symbol add_key is used by
src/providers/krb5/krb5_delayed_online_authentication.c
which is part of libsss_krb5_common.so

Fixes following error:
[sssd[be[default]]] [load_backend_module]
  (0x0010): Unable to load ad module with path
  (/usr/lib64/sssd/libsss_ad.so), error:
  /usr/lib64/sssd/libsss_krb5_common.so: undefined symbol: add_key

-lkeyutils was passed to the libraries libsss_{krb5,ipa,ad}.so,
but when compiling with -Wl,--as-needed this flag will be ignored,
since it is not used directly. So it was unavailable to
libsss_krb5_common.so which actually needs it.

This patch removes $(KEYUTILS_LIBS) from those libraries and adds it to
libsss_krb5_common.so

Maybe libsss_krb5_common.so should be added to dlopen-tests?
But then other libraries and functions are needed as well,
which it currently inherits from libsss_{krb5,ipa,ad}.so.

BTW: are these common libraries (i mean ldap too) convenience build libraries, or to save disk space?
If they're just for convencience maybe they should not be installed?

Regards, Ben