Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 582136

Summary: qpid c++ client library crash in qpid::client::ConnectionHandler::incoming() when authenticating SASL PLAIN
Product: Red Hat Enterprise MRG Reporter: Frantisek Reznicek <freznice>
Component: qpid-cppAssignee: messaging-bugs <messaging-bugs>
Status: CLOSED DUPLICATE QA Contact: MRG Quality Engineering <mrgqe-bugs>
Severity: high Docs Contact:
Priority: high    
Version: DevelopmentCC: esammons, gsim
Target Milestone: 1.3   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-04-15 21:58:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Frantisek Reznicek 2010-04-14 08:40:35 UTC
Description of problem:

There are observed crashes when c++ client (qc_client) runs against broker with SASL PLAIN authentication enabled.

Version-Release number of selected component (if applicable):
cyrus-sasl-2.1.22-5.el5_4.3
cyrus-sasl-devel-2.1.22-5.el5_4.3
cyrus-sasl-gssapi-2.1.22-5.el5_4.3
cyrus-sasl-lib-2.1.22-5.el5_4.3
cyrus-sasl-plain-2.1.22-5.el5_4.3
python-qmf-0.7.930108-1.el5
python-qpid-0.7.930108-1.el5
python-saslwrapper-0.1.897961-3.el5
qmf-0.7.929717-1.el5
qmf-devel-0.7.929717-1.el5
qpid-cpp-client-0.7.929717-1.el5
qpid-cpp-client-devel-0.7.929717-1.el5
qpid-cpp-client-devel-docs-0.7.929717-1.el5
qpid-cpp-client-ssl-0.7.929717-1.el5
qpid-cpp-mrg-debuginfo-0.7.929717-1.el5
qpid-cpp-server-0.7.929717-1.el5
qpid-cpp-server-cluster-0.7.929717-1.el5
qpid-cpp-server-devel-0.7.929717-1.el5
qpid-cpp-server-ssl-0.7.929717-1.el5
qpid-cpp-server-store-0.7.929717-1.el5
qpid-cpp-server-xml-0.7.929717-1.el5
qpid-java-client-0.7.918215-1.el5
qpid-java-common-0.7.918215-1.el5
qpid-tools-0.7.930108-1.el5
ruby-qpid-0.7.904654-1.el5
ruby-saslwrapper-0.1.897961-3.el5
saslwrapper-0.1.897961-3.el5
saslwrapper-devel-0.1.897961-3.el5

This crash is close to bug 488942, but slightly different in backtrace path and also in defect action.


How reproducible:
>30%

Steps to Reproduce:
1. set-up SASL PLAIN authentication
2. start broker with --auth yes
3. run qc_client client
   qc_client --conn-auth-mechanism PLAIN -p <port> --password <pass-id>
             --broker <host> --user <user-id>
4. repeat in loop for valid|invalid user-id and valid/invalid pass-id
  
Actual results:
C++ client crashes.

Expected results:
C++ client should not crash.

Additional info:

rhel 5.5 i386

core.10349: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from 'qc_client'
  GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-23.el5)
  Copyright (C) 2009 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
  and "show warranty" for details.
  This GDB was configured as "i386-redhat-linux-gnu".
  For bug reporting instructions, please see:
  [New Thread 10349]
  warning: .dynamic section for "/usr/lib/libqpidclient.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libm.so.6" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libqpidcommon.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libboost_program_options.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/librt.so.1" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libpthread.so.0" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libboost_filesystem.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libdl.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libresolv.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libz.so.1" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libcom_err.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  Core was generated by `/root/MRG/Messaging/qpid_common/clients/c++/qc_client -p 28486 --password _I_Dj'.
  Program terminated with signal 11, Segmentation fault.
  #0  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) () from /usr/lib/li
bstdc++.so.6
  (gdb) eax            0x0      0
  ecx            0x97c72ac      159150764
  edx            0x0    0
  ebx            0x727f5d4      120059348
  esp            0xb7601860     0xb7601860
  ebp            0xb7601888     0xb7601888
  esi            0x97be980      159115648
  edi            0x7281bbc      120069052
  eip            0x722d078      0x722d078 <std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned i
nt)+104>
  eflags         0x10206        [ PF IF RF ]
  cs             0x73   115
  ss             0x7b   123
  ds             0x7b   123
  es             0x7b   123
  fs             0x0    0
  gs             0x33   51
  st0            0      (raw 0x00000000000000000000)
  st1            0      (raw 0x00000000000000000000)
  st2            0      (raw 0x00000000000000000000)
  st3            0      (raw 0x00000000000000000000)
  st4            0      (raw 0x00000000000000000000)
  st5            0      (raw 0x00000000000000000000)
  st6            0      (raw 0x00000000000000000000)
  st7            0      (raw 0x00000000000000000000)
  fctrl          0x0    0
  fstat          0x0    0
  ftag           0x0    0
  fiseg          0x0    0
  fioff          0x0    0
  foseg          0x0    0
  fooff          0x0    0
  fop            0x0    0
  (gdb) Using memory regions provided by the target.
  There are no memory regions defined.
  (gdb) From        To          Syms Read   Shared Object Library
  0x003b6b40  0x0041e584  Yes (*)     /usr/lib/libboost_regex.so.2
  0x00eac1d0  0x00eb0324  Yes (*)     /usr/lib/libboost_thread.so.2
  0x0026eea0  0x0033b824  Yes (*)     /usr/lib/libqpidclient.so.2
  0x071dac50  0x07256134  Yes (*)     /usr/lib/libstdc++.so.6
  0x00113410  0x0012e594  Yes (*)     /lib/libm.so.6
  0x00b37660  0x00b3ef34  Yes (*)     /lib/libgcc_s.so.1
  0x00449c80  0x00544c40  Yes (*)     /lib/libc.so.6
  0x0064b8c0  0x00769ae4  Yes (*)     /usr/lib/libqpidcommon.so.2
  0x00144970  0x00163524  Yes (*)     /usr/lib/libboost_program_options.so.2
  0x008363f0  0x008f12b4  Yes (*)     /usr/lib/libicui18n.so.36
  0x009545e0  0x009e8544  Yes (*)     /usr/lib/libicuuc.so.36
  0x0016e880  0x00172b04  Yes (*)     /lib/librt.so.1
  0x0017a210  0x00185a74  Yes (*)     /lib/libpthread.so.0
  0x077ccee0  0x077ce954  Yes (*)     /lib/libuuid.so.1
  0x002097f0  0x0021eebf  Yes (*)     /lib/ld-linux.so.2
  0x001919a0  0x0019a614  Yes (*)     /usr/lib/libboost_filesystem.so.2
  0x0019ea50  0x0019fa84  Yes (*)     /lib/libdl.so.2
  0x077da190  0x077ea774  Yes (*)     /usr/lib/libsasl2.so.2
                          Yes (*)     /usr/lib/libicudata.so.36
  0x001a40c0  0x001af054  Yes (*)     /lib/libresolv.so.2
  0x074326e0  0x07439314  Yes (*)     /lib/libcrypt.so.1
  0x001bc050  0x001c99f4  Yes (*)     /usr/lib/qpid/client/sslconnector.so
  0x00d8c760  0x00da5b74  Yes (*)     /usr/lib/libsslcommon.so.2
  0x04d7afc0  0x04e5ea04  Yes (*)     /usr/lib/libnss3.so
  0x04efb480  0x04f21664  Yes (*)     /usr/lib/libssl3.so
  0x04e9a7a0  0x04ebd3f4  Yes (*)     /usr/lib/libnspr4.so
  0x04d4db40  0x04d59284  Yes (*)     /usr/lib/libnssutil3.so
  0x04d64df0  0x04d66704  Yes (*)     /usr/lib/libplc4.so
  0x00204a30  0x002059a4  Yes (*)     /usr/lib/libplds4.so
  0x001cf6a0  0x001da8d4  Yes (*)     /usr/lib/libz.so.1
  0x001e1b80  0x001e3b74  Yes (*)     /usr/lib/sasl2/libplain.so.2
  0x001e6b80  0x001e8a04  Yes (*)     /usr/lib/sasl2/libanonymous.so.2
  0x001ec0a0  0x001f0584  Yes (*)     /usr/lib/sasl2/libgssapiv2.so.2
  0x00c633d0  0x00c84374  Yes (*)     /usr/lib/libgssapi_krb5.so.2
  0x00a5e160  0x00acd884  Yes (*)     /usr/lib/libkrb5.so.3
  0x00c0c790  0x00c24564  Yes (*)     /usr/lib/libk5crypto.so.3
  0x001f27e0  0x001f2f94  Yes (*)     /lib/libcom_err.so.2
  0x00b45960  0x00b4a1b4  Yes (*)     /usr/lib/libkrb5support.so.0
  0x00afa8d0  0x00afb014  Yes (*)     /lib/libkeyutils.so.1
  0x00b00530  0x00b0d504  Yes (*)     /lib/libselinux.so.1
  0x00b4ff40  0x00b7de34  Yes (*)     /lib/libsepol.so.1
  0x00c9fa00  0x00d4a094  Yes (*)     /usr/lib/sasl2/libsasldb.so.2
  0x001f5b70  0x001f7a94  Yes (*)     /usr/lib/sasl2/liblogin.so.2
  (*): Shared library is missing debugging information.
  (gdb)   2 Thread 10349  0x00c44410 in __kernel_vsyscall ()
  * 1 Thread 10351  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) ()
     from /usr/lib/libstdc++.so.6
  Thread 2 (Thread 10349):
  #0  0x00c44410 in __kernel_vsyscall ()
  #1  0x0017ca77 in pthread_join () from /lib/libpthread.so.0
  #2  0x00662f82 in qpid::sys::Thread::join (this=0x97be2f0)
      at qpid/sys/posix/Thread.cpp:58
  #3  0x002940f7 in ~IOThread () at qpid/client/ConnectionImpl.cpp:130
  #4  __tcf_2 () at qpid/client/ConnectionImpl.cpp:136
  #5  0x00460059 in __cxa_finalize () from /lib/libc.so.6
  #6  0x0026ef04 in __do_global_dtors_aux () from /usr/lib/libqpidclient.so.2
  #7  0x0033b83c in _fini () from /usr/lib/libqpidclient.so.2
  #8  0x0021780e in _dl_fini () from /lib/ld-linux.so.2
  #9  0x0045fda9 in exit () from /lib/libc.so.6
  #10 0x00449ea4 in __libc_start_main () from /lib/libc.so.6
  #11 0x0804eff1 in _start ()
  Thread 1 (Thread 10351):
  #0  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) () from /usr/lib/li
bstdc++.so.6
  #1  0x0028b84c in qpid::client::ConnectionHandler::incoming (this=0x97be880,
      frame=...) at /usr/include/c++/4.1.2/bits/basic_string.h:915
  #2  0x00290f54 in qpid::client::ConnectionHandler::received (this=0x97be880,
      f=...) at qpid/client/ConnectionHandler.h:107
  #3  0x002ee473 in qpid::client::TCPConnector::decode (this=0x97be300,
      buffer=0x97d7928 "\017", size=59) at qpid/client/TCPConnector.cpp:304
  #4  0x002ea606 in qpid::client::TCPConnector::readbuff (this=0x97be300,
      aio=..., buff=0x97bf038) at qpid/client/TCPConnector.cpp:272
  #5  0x002ef674 in operator() (function_obj_ptr=..., a0=..., a1=0x97bf038)
      at /usr/include/boost/bind/mem_fn_template.hpp:252
  #6  operator()<bool, boost::_mfi::mf2<bool, qpid::client::TCPConnector, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*>, boost::_bi::list
2<qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*&> > (function_obj_ptr=..., a0=...,
      a1=0x97bf038) at /usr/include/boost/bind.hpp:338
  #7  operator()<qpid::sys::AsynchIO, qpid::sys::AsynchIOBufferBase*> (
      function_obj_ptr=..., a0=..., a1=0x97bf038)
      at /usr/include/boost/bind/bind_template.hpp:44
  #8  boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<bool, boost::_mfi::mf2<bool, qpid::client::TCPConnector, qpid::sys::
AsynchIO&, qpid::sys::AsynchIOBufferBase*>, boost::_bi::list3<boost::_bi::value<qpid::client::TCPConnector*>, boost::arg<1>, boost::arg<2> > >, v
oid, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*>::invoke (function_obj_ptr=..., a0=..., a1=0x97bf038)
      at /usr/include/boost/function/function_template.hpp:136
  #9  0x0066068e in boost::function2<void, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*, std::allocator<boost::function_base> >::operator
() (
      this=0x97bf704, a0=..., a1=0x97bf038)
      at /usr/include/boost/function/function_template.hpp:576
  #10 0x0065de90 in qpid::sys::posix::AsynchIO::readable (this=0x97bf660, h=...)
      at qpid/sys/posix/AsynchIO.cpp:418
  #11 0x0065efbd in operator() (function_obj_ptr=..., a0=...)
      at /usr/include/boost/bind/mem_fn_template.hpp:149
  #12 operator()<boost::_mfi::mf1<void, qpid::sys::posix::AsynchIO, qpid::sys::DispatchHandle&>, boost::_bi::list1<qpid::sys::DispatchHandle&> >
(
      function_obj_ptr=..., a0=...) at /usr/include/boost/bind.hpp:287
  #13 operator()<qpid::sys::DispatchHandle> (function_obj_ptr=..., a0=...)
      at /usr/include/boost/bind/bind_template.hpp:32
  #14 boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, qpid::sys::posix::AsynchIO, qpid::sys::
DispatchHandle&>, boost::_bi::list2<boost::_bi::value<qpid::sys::posix::AsynchIO*>, boost::arg<1> > >, void, qpid::sys::DispatchHandle&>::invoke
(function_obj_ptr=..., a0=...)
      at /usr/include/boost/function/function_template.hpp:136
  #15 0x007620d4 in boost::function1<void, qpid::sys::DispatchHandle&, std::allocator<boost::function_base> >::operator() (this=0x97bf66c, a0=...
)
      at /usr/include/boost/function/function_template.hpp:576
  #16 0x0075dcb8 in qpid::sys::DispatchHandle::processEvent (this=0x97bf664,
      type=READABLE) at qpid/sys/DispatchHandle.cpp:278
  #17 0x0066e054 in process (this=0x97be450) at qpid/sys/Poller.h:123
  #18 qpid::sys::Poller::run (this=0x97be450)
      at qpid/sys/epoll/EpollPoller.cpp:483
  #19 0x00662d21 in qpid::sys::(anonymous namespace)::runRunnable (p=0x97be450)
      at qpid/sys/posix/Thread.cpp:35
  #20 0x0017b832 in start_thread () from /lib/libpthread.so.0
  #21 0x00505e0e in clone () from /lib/libc.so.6
  (gdb) quit

Comment 2 Frantisek Reznicek 2010-04-14 08:55:43 UTC
Another one:
core.13940: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from 'qc_client'
  GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-23.el5)
  Copyright (C) 2009 Free Software Foundation, Inc.
  License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
  This is free software: you are free to change and redistribute it.
  There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
  and "show warranty" for details.
  This GDB was configured as "i386-redhat-linux-gnu".
  For bug reporting instructions, please see:
  [New Thread 13940]
  warning: .dynamic section for "/usr/lib/libqpidclient.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libm.so.6" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/librt.so.1" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libpthread.so.0" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libdl.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libz.so.1" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libgssapi_krb5.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libkrb5.so.3" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libk5crypto.so.3" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/lib/libcom_err.so.2" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  warning: .dynamic section for "/usr/lib/libkrb5support.so.0" is not at the expected address
  warning: difference appears to be caused by prelink, adjusting expectations
  Core was generated by `/root/MRG/Messaging/qpid_common/clients/c++/qc_client -p 27598 --password _I_vw'.
  Program terminated with signal 11, Segmentation fault.
  #0  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) () from /usr/lib/li
bstdc++.so.6
  (gdb) eax            0x0      0
  ecx            0x89042ac      143671980
  edx            0x0    0
  ebx            0x727f5d4      120059348
  esp            0xb760f860     0xb760f860
  ebp            0xb760f888     0xb760f888
  esi            0x88fb968      143636840
  edi            0x7281bbc      120069052
  eip            0x722d078      0x722d078 <std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned i
nt)+104>
  eflags         0x10206        [ PF IF RF ]
  cs             0x73   115
  ss             0x7b   123
  ds             0x7b   123
  es             0x7b   123
  fs             0x0    0
  gs             0x33   51
  st0            0      (raw 0x00000000000000000000)
  st1            0      (raw 0x00000000000000000000)
  st2            0      (raw 0x00000000000000000000)
  st3            0      (raw 0x00000000000000000000)
  st4            0      (raw 0x00000000000000000000)
  st5            0      (raw 0x00000000000000000000)
  st6            0      (raw 0x00000000000000000000)
  st7            0      (raw 0x00000000000000000000)
  fctrl          0x0    0
  fstat          0x0    0
  ftag           0x0    0
  fiseg          0x0    0
  fioff          0x0    0
  foseg          0x0    0
  fooff          0x0    0
  fop            0x0    0
  (gdb) Using memory regions provided by the target.
  There are no memory regions defined.
  (gdb) From        To          Syms Read   Shared Object Library
  0x00f2eb40  0x00f96584  Yes (*)     /usr/lib/libboost_regex.so.2
  0x003761d0  0x0037a324  Yes (*)     /usr/lib/libboost_thread.so.2
  0x003c7ea0  0x00494824  Yes (*)     /usr/lib/libqpidclient.so.2
  0x071dac50  0x07256134  Yes (*)     /usr/lib/libstdc++.so.6
  0x00113410  0x0012e594  Yes (*)     /lib/libm.so.6
  0x00b37660  0x00b3ef34  Yes (*)     /lib/libgcc_s.so.1
  0x0023cc80  0x00337c40  Yes (*)     /lib/libc.so.6
  0x00c158c0  0x00d33ae4  Yes (*)     /usr/lib/libqpidcommon.so.2
  0x006bf970  0x006de524  Yes (*)     /usr/lib/libboost_program_options.so.2
  0x0056f3f0  0x0062a2b4  Yes (*)     /usr/lib/libicui18n.so.36
  0x009535e0  0x009e7544  Yes (*)     /usr/lib/libicuuc.so.36
  0x00138880  0x0013cb04  Yes (*)     /lib/librt.so.1
  0x00144210  0x0014fa74  Yes (*)     /lib/libpthread.so.0
  0x077ccee0  0x077ce954  Yes (*)     /lib/libuuid.so.1
  0x002097f0  0x0021eebf  Yes (*)     /lib/ld-linux.so.2
  0x006a39a0  0x006ac614  Yes (*)     /usr/lib/libboost_filesystem.so.2
  0x00158a50  0x00159a84  Yes (*)     /lib/libdl.so.2
  0x077da190  0x077ea774  Yes (*)     /usr/lib/libsasl2.so.2
                          Yes (*)     /usr/lib/libicudata.so.36
  0x0073b0c0  0x00746054  Yes (*)     /lib/libresolv.so.2
  0x074326e0  0x07439314  Yes (*)     /lib/libcrypt.so.1
  0x00163050  0x001709f4  Yes (*)     /usr/lib/qpid/client/sslconnector.so
  0x00e84760  0x00e9db74  Yes (*)     /usr/lib/libsslcommon.so.2
  0x04d7afc0  0x04e5ea04  Yes (*)     /usr/lib/libnss3.so
  0x04efb480  0x04f21664  Yes (*)     /usr/lib/libssl3.so
  0x04e9a7a0  0x04ebd3f4  Yes (*)     /usr/lib/libnspr4.so
  0x04d4db40  0x04d59284  Yes (*)     /usr/lib/libnssutil3.so
  0x04d64df0  0x04d66704  Yes (*)     /usr/lib/libplc4.so
  0x00204a30  0x002059a4  Yes (*)     /usr/lib/libplds4.so
  0x001766a0  0x001818d4  Yes (*)     /usr/lib/libz.so.1
  0x001898c0  0x00190264  Yes (*)     /lib/libnss_files.so.2
  0x00ff3b80  0x00ff5b74  Yes (*)     /usr/lib/sasl2/libplain.so.2
  0x004dab80  0x004dca04  Yes (*)     /usr/lib/sasl2/libanonymous.so.2
  0x00e2f0a0  0x00e33584  Yes (*)     /usr/lib/sasl2/libgssapiv2.so.2
  0x0019a3d0  0x001bb374  Yes (*)     /usr/lib/libgssapi_krb5.so.2
  0x0075d160  0x007cc884  Yes (*)     /usr/lib/libkrb5.so.3
  0x001c4790  0x001dc564  Yes (*)     /usr/lib/libk5crypto.so.3
  0x001e77e0  0x001e7f94  Yes (*)     /lib/libcom_err.so.2
  0x001eb960  0x001f01b4  Yes (*)     /usr/lib/libkrb5support.so.0
  0x00afa8d0  0x00afb014  Yes (*)     /lib/libkeyutils.so.1
  0x004e2530  0x004ef504  Yes (*)     /lib/libselinux.so.1
  0x006eaf40  0x00718e34  Yes (*)     /lib/libsepol.so.1
  0x007f7a00  0x008a2094  Yes (*)     /usr/lib/sasl2/libsasldb.so.2
  0x00b27b70  0x00b29a94  Yes (*)     /usr/lib/sasl2/liblogin.so.2
  (*): Shared library is missing debugging information.
  (gdb)   2 Thread 13940  0x0051f410 in __kernel_vsyscall ()
  * 1 Thread 13942  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) ()
     from /usr/lib/libstdc++.so.6
  Thread 2 (Thread 13940):
  #0  0x0051f410 in __kernel_vsyscall ()
  #1  0x00146a77 in pthread_join () from /lib/libpthread.so.0
  #2  0x00c2cf82 in qpid::sys::Thread::join (this=0x88fb348)
      at qpid/sys/posix/Thread.cpp:58
  #3  0x003ed0f7 in ~IOThread () at qpid/client/ConnectionImpl.cpp:130
  #4  __tcf_2 () at qpid/client/ConnectionImpl.cpp:136
  #5  0x00253059 in __cxa_finalize () from /lib/libc.so.6
  #6  0x003c7f04 in __do_global_dtors_aux () from /usr/lib/libqpidclient.so.2
  #7  0x0049483c in _fini () from /usr/lib/libqpidclient.so.2
  #8  0x0021780e in _dl_fini () from /lib/ld-linux.so.2
  #9  0x00252da9 in exit () from /lib/libc.so.6
  #10 0x0023cea4 in __libc_start_main () from /lib/libc.so.6
  #11 0x0804eff1 in _start ()
  Thread 1 (Thread 13942):
  #0  0x0722d078 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::assign(char const*, unsigned int) () from /usr/lib/li
bstdc++.so.6
  #1  0x003e484c in qpid::client::ConnectionHandler::incoming (this=0x88fb868,
      frame=...) at /usr/include/c++/4.1.2/bits/basic_string.h:915
  #2  0x003e9f54 in qpid::client::ConnectionHandler::received (this=0x88fb868,
      f=...) at qpid/client/ConnectionHandler.h:107
  #3  0x00447473 in qpid::client::TCPConnector::decode (this=0x88fb358,
      buffer=0x8914928 "\017", size=59) at qpid/client/TCPConnector.cpp:304
  #4  0x00443606 in qpid::client::TCPConnector::readbuff (this=0x88fb358,
      aio=..., buff=0x88fc668) at qpid/client/TCPConnector.cpp:272
  #5  0x00448674 in operator() (function_obj_ptr=..., a0=..., a1=0x88fc668)
      at /usr/include/boost/bind/mem_fn_template.hpp:252
  #6  operator()<bool, boost::_mfi::mf2<bool, qpid::client::TCPConnector, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*>, boost::_bi::list
2<qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*&> > (function_obj_ptr=..., a0=...,
      a1=0x88fc668) at /usr/include/boost/bind.hpp:338
  #7  operator()<qpid::sys::AsynchIO, qpid::sys::AsynchIOBufferBase*> (
      function_obj_ptr=..., a0=..., a1=0x88fc668)
      at /usr/include/boost/bind/bind_template.hpp:44
  #8  boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<bool, boost::_mfi::mf2<bool, qpid::client::TCPConnector, qpid::sys::
AsynchIO&, qpid::sys::AsynchIOBufferBase*>, boost::_bi::list3<boost::_bi::value<qpid::client::TCPConnector*>, boost::arg<1>, boost::arg<2> > >, v
oid, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*>::invoke (function_obj_ptr=..., a0=..., a1=0x88fc668)
      at /usr/include/boost/function/function_template.hpp:136
  #9  0x00c2a68e in boost::function2<void, qpid::sys::AsynchIO&, qpid::sys::AsynchIOBufferBase*, std::allocator<boost::function_base> >::operator
() (
      this=0x88fcee4, a0=..., a1=0x88fc668)
      at /usr/include/boost/function/function_template.hpp:576
  #10 0x00c27e90 in qpid::sys::posix::AsynchIO::readable (this=0x88fce40, h=...)
      at qpid/sys/posix/AsynchIO.cpp:418
  #11 0x00c28fbd in operator() (function_obj_ptr=..., a0=...)
      at /usr/include/boost/bind/mem_fn_template.hpp:149
  #12 operator()<boost::_mfi::mf1<void, qpid::sys::posix::AsynchIO, qpid::sys::DispatchHandle&>, boost::_bi::list1<qpid::sys::DispatchHandle&> >
(
      function_obj_ptr=..., a0=...) at /usr/include/boost/bind.hpp:287
  #13 operator()<qpid::sys::DispatchHandle> (function_obj_ptr=..., a0=...)
      at /usr/include/boost/bind/bind_template.hpp:32
  #14 boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, qpid::sys::posix::AsynchIO, qpid::sys::
DispatchHandle&>, boost::_bi::list2<boost::_bi::value<qpid::sys::posix::AsynchIO*>, boost::arg<1> > >, void, qpid::sys::DispatchHandle&>::invoke
(function_obj_ptr=..., a0=...)
      at /usr/include/boost/function/function_template.hpp:136
  #15 0x00d2c0d4 in boost::function1<void, qpid::sys::DispatchHandle&, std::allocator<boost::function_base> >::operator() (this=0x88fce4c, a0=...
)
      at /usr/include/boost/function/function_template.hpp:576
  #16 0x00d27cb8 in qpid::sys::DispatchHandle::processEvent (this=0x88fce44,
      type=READABLE) at qpid/sys/DispatchHandle.cpp:278
  #17 0x00c38054 in process (this=0x88fb4a0) at qpid/sys/Poller.h:123
  #18 qpid::sys::Poller::run (this=0x88fb4a0)
      at qpid/sys/epoll/EpollPoller.cpp:483
  #19 0x00c2cd21 in qpid::sys::(anonymous namespace)::runRunnable (p=0x88fb4a0)
      at qpid/sys/posix/Thread.cpp:35
  #20 0x00145832 in start_thread () from /lib/libpthread.so.0
  #21 0x002f8e0e in clone () from /lib/libc.so.6
  (gdb) quit

Comment 3 Gordon Sim 2010-04-15 21:58:41 UTC

*** This bug has been marked as a duplicate of bug 580824 ***