[MacPorts] #36811: heimdal: kinit segfaults

MacPorts noreply at macports.org
Wed Dec 19 05:09:38 PST 2012


#36811: heimdal: kinit segfaults
------------------------+-----------------------
  Reporter:  aronnax@…  |      Owner:  landonf@…
      Type:  defect     |     Status:  new
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:  2.1.2
Resolution:             |   Keywords:
      Port:  heimdal    |
------------------------+-----------------------

Comment (by raimue@…):

 I rebuild heimdal with debug symbols enabled (`configure.cflags-append -g
 -O0`) and here is a backtrace from this run:

 {{{
 Program received signal EXC_BAD_ACCESS, Could not access memory.
 Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000
 0x00007fff8fe280d4 in krb5_cc_destroy ()
 (gdb) bt
 #0  0x00007fff8fe280d4 in krb5_cc_destroy ()
 #1  0x00007fff9615b22f in ccache_destroy ()
 #2  0x00000001000164ae in acc_destroy (context=0x100607430,
 id=0x100627170) at acache.c:665
 #3  0x000000010001713d in acc_move (context=0x100607430, from=0x100627170,
 to=0x100611b00) at acache.c:1008
 #4  0x0000000100020f10 in krb5_cc_move (context=0x100607430,
 from=0x100627170, to=0x100611b00) at cache.c:1207
 #5  0x0000000100003886 in get_new_tickets (context=0x100607430,
 principal=0x100611ad0, ccache=0x100611b00, ticket_life=0, interactive=1)
 at kinit.c:616
 #6  0x000000010000212c in main (argc=0, argv=0x7fff5fbff488) at
 kinit.c:882
 (gdb) info address krb5_cc_destroy
 Symbol "krb5_cc_destroy" is a function at address 0x100020060.
 (gdb) info symbol krb5_cc_destroy
 krb5_cc_destroy in section LC_SEGMENT.__TEXT.__text of
 /opt/local/libexec/heimdal/lib/libkrb5.26.dylib
 (gdb) info symbol ccache_destroy
 ccache_destroy in section LC_SEGMENT.__TEXT.__text of
 /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
 (gdb) info address ccache_destroy
 Symbol "ccache_destroy" is at 0x7fff9615b1e5 in a file compiled without
 debugging.
 }}}

 So the problem appears to be that the Kerberos.framework gets called here
 for the `ccache_destroy` symbol, which then calls `krb5_cc_destroy` from
 the Kerberos.framework as well. This leads to a segmentation fault, most
 probably because the opaque data types do not match.

-- 
Ticket URL: <https://trac.macports.org/ticket/36811#comment:5>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list