[MacPorts] #47769: libgcrypt abort/crash when using krdc to connect to an OS X host

MacPorts noreply at macports.org
Tue May 19 09:31:17 PDT 2015


#47769: libgcrypt abort/crash when using krdc to connect to an OS X host
--------------------------+--------------------------------
  Reporter:  rjvbertin@…  |      Owner:  macports-tickets@…
      Type:  defect       |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:  2.3.3
Resolution:               |   Keywords:
      Port:  libgcrypt    |
--------------------------+--------------------------------

Comment (by rjvbertin@…):

 Managed to get a better backtrace:

 {{{
 # lldb /Applications/MacPorts/KDE4/krdc.app/Contents/MacOS/krdc
 (lldb) target create
 "/Applications/MacPorts/KDE4/krdc.app/Contents/MacOS/krdc"
 Current executable set to
 '/Applications/MacPorts/KDE4/krdc.app/Contents/MacOS/krdc' (x86_64).
 (lldb) r
 Process 68384 launched:
 '/Applications/MacPorts/KDE4/krdc.app/Contents/MacOS/krdc' (x86_64)
 tp-qt 0.9.5 DEBUG: Register StreamTubeClient with name  "krdc_rfb_handler"
 tp-qt 0.9.5 DEBUG: Client registered - busName:
 "org.freedesktop.Telepathy.Client.krdc_rfb_handler" objectPath:
 "/org/freedesktop/Telepathy/Client/krdc_rfb_handler" interfaces:
 ("org.freedesktop.Telepathy.Client.Handler")
 QDBusObjectPath: invalid path ""
 krdc(68384)/kdeui (kdelibs): Attempt to use QAction
 "remote_desktop_dockwidget" with KXMLGUIFactory!
 QSystemTrayIcon::setVisible: No Icon set
 2015-05-19 17:13:40.958 krdc[68384:d0b] modalSession has been exited
 prematurely - check for a reentrant call to endModalSession:
 ### WalletPrivate ->handleIdleTiming: created QTimer(0x103bea860, name =
 "idleTimer for process/wallet ""/kdewallet") for wallet "kdewallet" handle
 92408080 timeout= 6
 Opened already unlocked wallet ' "kdewallet" ':
 KWallet::Wallet(0x109bc9690)
 2015-05-19 17:13:46.368 krdc[68384:d0b] modalSession has been exited
 prematurely - check for a reentrant call to endModalSession:
 Fatal: failed to create the RNG lock: Invalid argument
 FATAL: failed to acquire the FSM lock in libgrypt: Invalid argument
 Process 68384 stopped
 * thread #8: tid = 0x59d336, 0x00007fff8dcee866
 libsystem_kernel.dylib`__pthread_kill + 10, name = 'VncClientThread', stop
 reason = signal SIGABRT
     frame #0: 0x00007fff8dcee866 libsystem_kernel.dylib`__pthread_kill +
 10
 libsystem_kernel.dylib`__pthread_kill + 10:
 -> 0x7fff8dcee866:  jae    0x7fff8dcee870            ; __pthread_kill + 20
    0x7fff8dcee868:  movq   %rax, %rdi
    0x7fff8dcee86b:  jmp    0x7fff8dceb175            ; cerror_nocancel
    0x7fff8dcee870:  retq
 (lldb) bt
 * thread #8: tid = 0x59d336, 0x00007fff8dcee866
 libsystem_kernel.dylib`__pthread_kill + 10, name = 'VncClientThread', stop
 reason = signal SIGABRT
   * frame #0: 0x00007fff8dcee866 libsystem_kernel.dylib`__pthread_kill +
 10
     frame #1: 0x00007fff8e4dd35c libsystem_pthread.dylib`pthread_kill + 92
     frame #2: 0x00007fff91d85b1a libsystem_c.dylib`abort + 125
     frame #3: 0x000000010a8561d8 libgcrypt.20.dylib`fips_new_state
 [inlined] lock_fsm + 520 at fips.c:235
     frame #4: 0x000000010a8561c8
 libgcrypt.20.dylib`fips_new_state(new_state=STATE_FATALERROR) + 504 at
 fips.c:759
     frame #5: 0x000000010a856501
 libgcrypt.20.dylib`_gcry_fips_signal_error(srcfile=0x000000010a8b59e8,
 srcline=<unavailable>, srcfunc=0x000000010a8b5a47, is_fatal=<unavailable>,
 description=0x000000010a8b5a52) + 81 at fips.c:732
     frame #6: 0x000000010a84d3a6 libgcrypt.20.dylib`_gcry_log_fatal
 [inlined] _gcry_logv(level=<unavailable>) + 108 at misc.c:140
     frame #7: 0x000000010a84d33a
 libgcrypt.20.dylib`_gcry_log_fatal(fmt=<unavailable>) + 138 at misc.c:230
     frame #8: 0x000000010a8a6911
 libgcrypt.20.dylib`_gcry_rngfips_initialize [inlined]
 check_guards(rng_ctx=<unavailable>) + 689 at random-fips.c:255
     frame #9: 0x000000010a8a6906
 libgcrypt.20.dylib`_gcry_rngfips_initialize(full=<unavailable>) + 678 at
 random-fips.c:777
     frame #10: 0x000000010a8a69ec
 libgcrypt.20.dylib`_gcry_rngfips_randomize(buffer=0x0000000109b04b00,
 length=16, level=GCRY_STRONG_RANDOM) + 28 at random-fips.c:835
     frame #11: 0x000000010a8a3f26
 libgcrypt.20.dylib`_gcry_random_bytes(nbytes=16, level=<unavailable>) + 38
 at random.c:324
     frame #12: 0x000000010a8b210f
 libgcrypt.20.dylib`_gcry_mpi_randomize(w=<unavailable>,
 nbits=<unavailable>, level=<unavailable>) + 95 at mpiutil.c:612
     frame #13: 0x0000000105db5439
 libvncclient.0.dylib`InitialiseRFBConnection + 3401
     frame #14: 0x0000000105dc7fe9 libvncclient.0.dylib`rfbInitClient + 969
     frame #15: 0x0000000105d8f52f
 krdc_vncplugin.so`VncClientThread::clientCreate(this=0x0000000103bdf2f0,
 reinitialising=false) + 319 at vncclientthread.cpp:555
     frame #16: 0x0000000105d8edba
 krdc_vncplugin.so`VncClientThread::run(this=0x0000000103bdf2f0) + 282 at
 vncclientthread.cpp:463
     frame #17: 0x000000010106e272
 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at
 qthread_unix.cpp:352
     frame #18: 0x00007fff8e4dc899 libsystem_pthread.dylib`_pthread_body +
 138
     frame #19: 0x00007fff8e4dc72a libsystem_pthread.dylib`_pthread_start +
 137
     frame #20: 0x00007fff8e4e0fc9 libsystem_pthread.dylib`thread_start +
 13
 }}}

 It looks like ath_init() is never called; this may in fact be a bug in
 LibVNCServer (to be confirmed)

-- 
Ticket URL: <https://trac.macports.org/ticket/47769#comment:1>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list