[krbdev.mit.edu #8614] Error with SAP NW 7.51 krb5int_key_register: Assertion `destructors_set[keynum] == 0' failed

Greg Hudson via RT rt-comment at krbdev.mit.edu
Thu Sep 21 16:53:19 EDT 2017


I believe this happens when two different versions of 
libgssapi_krb5.so are loaded into the same process (in this case, 
probably the one under /usr/lib and the one in /usr/local/lib), but 
they both wind up using the same instance of libkrb5support.so.  The 
initializer runs in both copies of libgssapi_krb5, and tries to re-
register the same thread-specific data key, triggering the assertion 
failure.

Debugging these kinds of problems can be difficult, as it requires 
tracking down what is loading each version of libgssapi_krb5.so.  In 
this case it seems like SAP is loading the version from 
/usr/local/lib, but I don't know what is loading the one from 
/usr/lib.

(I'm also a little confused as to how a process could manage to load 
two different versions of libgssapi_krb5.so as we haven't changed its 
soname since the 1.2 release.)


More information about the krb5-bugs mailing list