Ticket #82 (new defect)
barnowl core dump in ZRetrieveSubscriptions
| Reported by: | kaduk@… | Owned by: | |
|---|---|---|---|
| Priority: | major | Milestone: | somebody else's problem |
| Component: | zephyr.lib | Version: | 3.0.1 |
| Keywords: | Cc: | kaduk@… | |
| Platform: |
Description
I'm not entirely sure where the blame for this crash lies, but it looks more likely to be in zephyr than in barnowl, at the moment. (Who knows, maybe it's in my krb5 implementation!)
(gdb) bt
#0 0x0000000801d0baa1 in krb5_cc_default_name () from /usr/lib/libkrb5.so.10
#1 0x0000000801d0bff9 in krb5_cc_default () from /usr/lib/libkrb5.so.10
#2 0x0000000802bbada2 in ZGetSender () at ZGetSender.c:43
#3 0x0000000802bc1698 in Z_FormatHeader (notice=0x7fffffffced0,
buffer=0x7fffffffc820 "ÐÈÿÿÿ\177", buffer_len=832, len=0x7fffffffc81c,
cert_routine=0x41d32c <ZMakeAuthentication@plt>) at Zinternal.c:655
#4 0x0000000802bba78e in ZFormatNotice (notice=0x7fffffffced0,
buffer=0x7fffffffcb98, ret_len=0x7fffffffcb94, cert_routine=Variable "cert_routine" is not available.
)
at ZFmtNotice.c:29
#5 0x0000000802bbe033 in ZSrvSendNotice (notice=Variable "notice" is not available.
) at ZSendNot.c:37
#6 0x0000000802bbe0b0 in ZSendNotice (notice=Variable "notice" is not available.
) at ZSendNot.c:23
#7 0x0000000802bbda85 in Z_RetSubs (notice=0x7fffffffced0,
nsubs=0x7fffffffd02c, auth_routine=0x41d32c <ZMakeAuthentication@plt>)
at ZRetSubs.c:89
#8 0x0000000802bbdf1f in ZRetrieveSubscriptions (port=Variable "port" is not available.
) at ZRetSubs.c:44
#9 0x0000000000420358 in owl_zephyr_getsubs ()
#10 0x000000000043ff76 in owl_function_getsubs ()
Change History
comment:2 Changed 15 months ago by kaduk@…
Apparently this one is probably related to a lack of a zhm running.
(Sorry for starting off with an incomplete report and adding to it.)
comment:3 Changed 3 months ago by jhutz@…
I think this is a barnowl bug. AFAIK, barnowl does not call ZInitialize(), which would normally be responsible for initializing Zephyr's krb5 context. I'm not sure what barnowl does instead, but apparently it normally works.
My guess is that, in the absence of a zhm, barnowl doesn't do enough Zephyr library initialization, and so Z_krb5_ctx never gets initialized.
comment:4 Changed 3 months ago by jhutz@…
Reported in barnowl as barnowl:ticket:244

(gdb) p ccache $1 = 0x7fffffffc9e0 (gdb) p *ccache $2 = {ops = 0x0, data = {length = 924290691933744164, data = 0x0}} (gdb) p Z_krb5_ctx $3 = 0x0