jawr/ebftpd

Crash on shutdown -- cleanup order not working properly

Closed this issue · 0 comments

#0 0x00007f835e486425 in __GI_raise (sig=) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007f835e489b8b in __GI_abort () at abort.c:91
#2 0x00007f835ed81e2d in __gnu_cxx::__verbose_terminate_handler ()

at ../../../../src/libstdc++-v3/libsupc++/vterminate.cc:95

#3 0x00007f835ed7ff26 in __cxxabiv1::__terminate (handler=)

at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:40

#4 0x00007f835ed7ff53 in std::terminate () at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:50
#5 0x00007f835ed8017e in __cxxabiv1::__cxa_throw (obj=0x21e33e0, tinfo=, dest=)

at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:83

#6 0x000000000042c78a in boost::throw_exceptionboost::lock_error (e=...)

at /usr/local/include/boost/throw_exception.hpp:61

#7 0x000000000042a98a in boost::mutex::lock (this=0x21c87b8) at /usr/local/include/boost/thread/pthread/mutex.hpp:63
#8 0x000000000048abb9 in util::net::TLSContext::MutexLockCallback (mode=9, n=10, file=0x7f8360f2573b "pmeth_lib.c",

line=330) at src/util/net/tlscontext.cpp:174

#9 0x00007f8360e21e27 in CRYPTO_add_lock () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
#10 0x00007f8360eaedd2 in EVP_PKEY_CTX_dup () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
#11 0x00007f8360ea1c0c in EVP_MD_CTX_copy_ex () from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
#12 0x00007f835fdcd462 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#13 0x00007f835fdc3f0c in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#14 0x00007f835fdc5483 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#15 0x00007f835fdc1b62 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
#16 0x000000000048087f in util::net::TLSSocket::Close (this=0x7f833c007550) at src/util/net/tlssocket.cpp:117
#17 0x000000000048f10f in util::net::TCPSocket::Close (this=0x7f8348000930) at src/util/net/tcpsocket.cpp:296
#18 0x000000000048de9d in util::net::TCPSocket::~TCPSocket (this=0x7f8348000930, __in_chrg=)

at src/util/net/tcpsocket.cpp:26

#19 0x000000000043df46 in ftp::Control::~Control (this=0x7f8348000928, __in_chrg=) at src/ftp/control.hpp:20
#20 0x000000000043ad34 in ftp::Client::~Client (this=0x7f83480008e0, __in_chrg=) at src/ftp/client.cpp:49
#21 0x000000000043ae88 in ftp::Client::~Client (this=0x7f83480008e0, __in_chrg=) at src/ftp/client.cpp:51
#22 0x0000000000446550 in boost::checked_delete<ftp::Client const> (x=0x7f83480008e0)

at /usr/local/include/boost/checked_delete.hpp:34

---Type to continue, or q to quit---
#23 0x0000000000446335 in boost::delete_cloneftp::Client (r=0x7f83480008e0)

at /usr/local/include/boost/ptr_container/clone_allocator.hpp:56

#24 0x0000000000445ff4 in boost::heap_clone_allocator::deallocate_cloneftp::Client (r=0x7f83480008e0)

at /usr/local/include/boost/ptr_container/clone_allocator.hpp:74

#25 0x00000000004459a4 in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::null_clone_allocator::deallocate_clone (x=0x7f83480008e0) at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:126
#26 0x0000000000444d9b in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::null_policy_deallocate_clone (

x=0x7f83480008e0) at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:276

#27 0x0000000000444120 in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::removeboost::void_ptr_iterator<std::_List_iterator<void*, ftp::Client> > (this=0x98c008, i=...)

at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:250

#28 0x00000000004446af in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::removeboost::void_ptr_iterator<std::_List_iterator<void*, ftp::Client> > (this=0x98c008, first=..., last=...)

at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:257

#29 0x0000000000443b49 in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::remove_all (this=0x98c008)

at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:218

#30 0x00000000004432bd in boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<ftp::Client, std::list<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::~reversible_ptr_container (

this=0x98c008, __in_chrg=<optimized out>)
at /usr/local/include/boost/ptr_container/detail/reversible_ptr_container.hpp:465

#31 0x0000000000442da8 in boost::ptr_sequence_adapter<ftp::Client, std::list<void*, std::allocator<void*> >, boost::heap_clone_allocator>::~ptr_sequence_adapter (this=0x98c008, __in_chrg=)

at /usr/local/include/boost/ptr_container/ptr_sequence_adapter.hpp:129

#32 0x0000000000442dc2 in boost::ptr_list<ftp::Client, boost::heap_clone_allocator, std::allocator<void*> >::~ptr_list (

this=0x98c008, __in_chrg=<optimized out>) at /usr/local/include/boost/ptr_container/ptr_list.hpp:31

---Type to continue, or q to quit---
#33 0x00000000004467de in ftp::Listener::~Listener (this=0x98bf80, __in_chrg=) at src/ftp/listener.hpp:24
#34 0x00007f835e48b901 in __run_exit_handlers (status=0, listp=0x7f835e808688, run_list_atexit=true) at exit.c:78
#35 0x00007f835e48b985 in __GI_exit (status=) at exit.c:100
#36 0x00007f835e471774 in __libc_start_main (main=0x46678d <main(int, char**)>, argc=2, ubp_av=0x7fffb76edc08,

init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffb76edbf8) at libc-start.c:258

#37 0x000000000042868d in _start ()