Assertion failed for krb5kdc

Ken Raeburn raeburn at MIT.EDU
Fri Oct 16 00:28:12 EDT 2009


On Oct 15, 2009, at 19:20, Tom Yu wrote:
> eightball <sthgrau at gmail.com> writes:
>
>> I am having the same problem with Solaris 8 and 9, but not 10. The
>> output is the same between 8 and 9, so I am just sending 8.
>> Thanks for your help,
>> Steve
>
> A comment in k5-thread.h implies that Solaris < 10 have a broken
> pthread_once() that doesn't actually do anything.  I thought we had a
> workaround for it.

Yes... on Solaris it ought to be using the code paths that call  
krb5int_pthread_loaded in the support library.  Among other things,  
that function may call pthread_once a couple of times, and the  
function passed (loaded_test_aux) will adjust a global variable  
(flag_pthread_loaded) to indicate whether it actually got invoked.

So, some more things might help track down what's going on:
  - set a breakpoint in krb5int_pthread_loaded, to verify that it's  
getting called
  - set a breakpoint in loaded_test_aux, to see whether it's getting  
called
  - examine flag_pthread_loaded after the process aborts, to see how  
it's set

>> #0  0xfef9fe08 in _libc_kill () from /usr/lib/libc.so.1
>> #1  0xfef35a2c in abort () from /usr/lib/libc.so.1
>> #2  0xfef35cd0 in _assert () from /usr/lib/libc.so.1
>> #3  0xff21716c in krb5int_initialize_library () at krb5_libinit.c:63
>> #4  0xff2496b4 in init_common (context=0xffbef8d4, secure=0, kdc=1)  
>> at
>> init_ctx.c:134
>> #5  0x00020370 in main (argc=2, argv=0xffbef94c) at main.c:855

That's about what I'd expect, given the assertion message text...

Ken



More information about the Kerberos mailing list