All pastes #735741 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-10-13 22:14 UTC
rendered paste body
Sat Oct 13 15:11:50 2007: Change count for mode I is now 596
Sat Oct 13 15:11:50 2007: Change count for mode I is now 597
Sat Oct 13 15:11:50 2007: Change count for mode I is now 598
Sat Oct 13 15:11:50 2007: Change count for mode I is now 599
Sat Oct 13 15:11:50 2007: Change count for mode I is now 600
Sat Oct 13 15:11:50 2007: Change count for mode I is now 601
Sat Oct 13 15:11:50 2007: Remove file descriptor: 11
==3461==
==3461== Invalid read of size 4
==3461==    at 0x428B282: EventHandler::GetFd() (socketengine.cpp:19)
==3461==    by 0x428BFB6: EPollEngine::WantWrite(EventHandler*) (socketengine_epoll.cpp:76)
==3461==    by 0x4A18ECF: ModuleSSLGnuTLS::MakePollWrite(issl_session*) (m_ssl_gnutls.cpp:686)
==3461==    by 0x4A1AC58: ModuleSSLGnuTLS::OnRawSocketWrite(int, char const*, int) (m_ssl_gnutls.cpp:552)
==3461==    by 0x421254A: userrec::Write(std::string) (users.cpp:1383)
==3461==    by 0x4214B04: userrec::Write(char const*, ...) (users.cpp:1409)
==3461==    by 0x4299AAD: CullList::Apply() (cull_list.cpp:130)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x52919B0 is 32 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== ---- Attach to debugger ? --- [Return/N/n/Y/y/C/c] ----
==3461==
==3461== Invalid read of size 4
==3461==    at 0x428B282: EventHandler::GetFd() (socketengine.cpp:19)
==3461==    by 0x428BFC4: EPollEngine::WantWrite(EventHandler*) (socketengine_epoll.cpp:77)
==3461==    by 0x4A18ECF: ModuleSSLGnuTLS::MakePollWrite(issl_session*) (m_ssl_gnutls.cpp:686)
==3461==    by 0x4A1AC58: ModuleSSLGnuTLS::OnRawSocketWrite(int, char const*, int) (m_ssl_gnutls.cpp:552)
==3461==    by 0x421254A: userrec::Write(std::string) (users.cpp:1383)
==3461==    by 0x4214B04: userrec::Write(char const*, ...) (users.cpp:1409)
==3461==    by 0x4299AAD: CullList::Apply() (cull_list.cpp:130)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x52919B0 is 32 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== ---- Attach to debugger ? --- [Return/N/n/Y/y/C/c] ----
==3461==
==3461== Invalid read of size 4
==3461==    at 0x80708D0: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_begin() (stl_tree.h:466)
==3461==    by 0x440BE68: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1313)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x440BFD9: bool Extensible::GetExt<char>(std::string const&, char*&) (base.h:130)
==3461==    by 0x4A1A8AB: ModuleSSLGnuTLS::OnRawSocketClose(int) (m_ssl_gnutls.cpp:402)
==3461==    by 0x4299F72: CullList::Apply() (cull_list.cpp:150)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==  Address 0x52919A0 is 16 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== ---- Attach to debugger ? --- [Return/N/n/Y/y/C/c] ----
==3461==
==3461== Process terminating with default action of signal 11 (SIGSEGV)
==3461==  Access not within mapped region at address 0x73752E71
==3461==    at 0x409EF0B: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BE9E: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1317)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x440BFD9: bool Extensible::GetExt<char>(std::string const&, char*&) (base.h:130)
==3461==    by 0x4A1A8AB: ModuleSSLGnuTLS::OnRawSocketClose(int) (m_ssl_gnutls.cpp:402)
==3461==    by 0x4299F72: CullList::Apply() (cull_list.cpp:150)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== ---- Attach to debugger ? --- [Return/N/n/Y/y/C/c] ----
==3461==
==3461== ERROR SUMMARY: 50 errors from 26 contexts (suppressed: 784 from 1)
==3461==
==3461== 1 errors in context 1 of 26:
==3461== Invalid read of size 4
==3461==    at 0x80708D0: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_begin() (stl_tree.h:466)
==3461==    by 0x440BE68: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1313)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x440BFD9: bool Extensible::GetExt<char>(std::string const&, char*&) (base.h:130)
==3461==    by 0x4A1A8AB: ModuleSSLGnuTLS::OnRawSocketClose(int) (m_ssl_gnutls.cpp:402)
==3461==    by 0x4299F72: CullList::Apply() (cull_list.cpp:150)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==  Address 0x52919A0 is 16 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== 1 errors in context 2 of 26:
==3461== Invalid read of size 4
==3461==    at 0x428B282: EventHandler::GetFd() (socketengine.cpp:19)
==3461==    by 0x428BFC4: EPollEngine::WantWrite(EventHandler*) (socketengine_epoll.cpp:77)
==3461==    by 0x4A18ECF: ModuleSSLGnuTLS::MakePollWrite(issl_session*) (m_ssl_gnutls.cpp:686)
==3461==    by 0x4A1AC58: ModuleSSLGnuTLS::OnRawSocketWrite(int, char const*, int) (m_ssl_gnutls.cpp:552)
==3461==    by 0x421254A: userrec::Write(std::string) (users.cpp:1383)
==3461==    by 0x4214B04: userrec::Write(char const*, ...) (users.cpp:1409)
==3461==    by 0x4299AAD: CullList::Apply() (cull_list.cpp:130)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x52919B0 is 32 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== 1 errors in context 3 of 26:
==3461== Invalid read of size 4
==3461==    at 0x428B282: EventHandler::GetFd() (socketengine.cpp:19)
==3461==    by 0x428BFB6: EPollEngine::WantWrite(EventHandler*) (socketengine_epoll.cpp:76)
==3461==    by 0x4A18ECF: ModuleSSLGnuTLS::MakePollWrite(issl_session*) (m_ssl_gnutls.cpp:686)
==3461==    by 0x4A1AC58: ModuleSSLGnuTLS::OnRawSocketWrite(int, char const*, int) (m_ssl_gnutls.cpp:552)
==3461==    by 0x421254A: userrec::Write(std::string) (users.cpp:1383)
==3461==    by 0x4214B04: userrec::Write(char const*, ...) (users.cpp:1409)
==3461==    by 0x4299AAD: CullList::Apply() (cull_list.cpp:130)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x52919B0 is 32 bytes inside a block of size 12,272 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A02A5: std::string::assign(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A0303: std::string::operator=(std::string const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4DCB911: TreeSocket::OnDataReady() (treesocket1.cpp:1257)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==
==3461== 1 errors in context 4 of 26:
==3461== Conditional jump or move depends on uninitialised value(s)
==3461==    at 0x4DB93F9: ModuleSpanningTree::DoPingChecks(long) (main.cpp:508)
==3461==    by 0x4DB9615: ModuleSpanningTree::OnBackgroundTimer(long) (main.cpp:981)
==3461==    by 0x806CAEC: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1106)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 1 errors in context 5 of 26:
==3461== Conditional jump or move depends on uninitialised value(s)
==3461==    at 0x46F896B: ModuleWaitPong::OnRehash(userrec*, std::string const&) (m_conn_waitpong.cpp:40)
==3461==    by 0x46F8B43: ModuleWaitPong::ModuleWaitPong(InspIRCd*) (m_conn_waitpong.cpp:31)
==3461==    by 0x46F8BDF: Factory::CreateModule(InspIRCd*) (m_conn_waitpong.cpp:148)
==3461==    by 0x806A6C8: InspIRCd::LoadModule(char const*) (inspircd.cpp:989)
==3461==    by 0x4261156: InspIRCd::LoadAllModules() (helperfuncs.cpp:516)
==3461==    by 0x806EB97: InspIRCd::InspIRCd(int, char**) (inspircd.cpp:637)
==3461==    by 0x806F176: ircd(int, char**) (inspircd.cpp:1175)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 2 errors in context 6 of 26:
==3461== Invalid read of size 4
==3461==    at 0x4199261: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::begin() (stl_tree.h:592)
==3461==    by 0x419A335: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::_Rb_tree_iterator<std::pair<std::string const, char*> >, std::_Rb_tree_iterator<std::pair<std::string const, char*> >) (stl_tree.h:1277)
==3461==    by 0x419A45D: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1215)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==  Address 0x4E83534 is 20 bytes inside a block of size 952 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x4219287: userrec::~userrec() (users.cpp:391)
==3461==    by 0x421AC3B: void DELETE<userrec>(userrec*) (inspircd.h:74)
==3461==    by 0x429A51E: CullList::Apply() (cull_list.cpp:194)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 2 errors in context 7 of 26:
==3461== Invalid read of size 4
==3461==    at 0x8071978: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_S_left(std::_Rb_tree_node_base*) (stl_tree.h:493)
==3461==    by 0x41995BC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::lower_bound(std::string const&) (stl_tree.h:1372)
==3461==    by 0x4199644: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59B00 is 8 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 8 of 26:
==3461== Invalid read of size 1
==3461==    at 0x409EF39: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x41995A4: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::lower_bound(std::string const&) (stl_tree.h:1371)
==3461==    by 0x4199644: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59AC4 is 12 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 9 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF10: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x41995A4: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::lower_bound(std::string const&) (stl_tree.h:1371)
==3461==    by 0x4199644: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59AB8 is 0 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 10 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF0B: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x41995A4: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::lower_bound(std::string const&) (stl_tree.h:1371)
==3461==    by 0x4199644: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59B08 is 16 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 11 of 26:
==3461== Invalid read of size 4
==3461==    at 0x80708D0: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_begin() (stl_tree.h:466)
==3461==    by 0x419956E: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::lower_bound(std::string const&) (stl_tree.h:1367)
==3461==    by 0x4199644: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4E83530 is 16 bytes inside a block of size 952 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x4219287: userrec::~userrec() (users.cpp:391)
==3461==    by 0x421AC3B: void DELETE<userrec>(userrec*) (inspircd.h:74)
==3461==    by 0x429A51E: CullList::Apply() (cull_list.cpp:194)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 2 errors in context 12 of 26:
==3461== Invalid read of size 4
==3461==    at 0x8071978: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_S_left(std::_Rb_tree_node_base*) (stl_tree.h:493)
==3461==    by 0x419951B: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::upper_bound(std::string const&) (stl_tree.h:1408)
==3461==    by 0x4199622: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59B00 is 8 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 13 of 26:
==3461== Invalid read of size 1
==3461==    at 0x409EF39: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x4199506: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::upper_bound(std::string const&) (stl_tree.h:1407)
==3461==    by 0x4199622: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59AC4 is 12 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 14 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF1E: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x4199506: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::upper_bound(std::string const&) (stl_tree.h:1407)
==3461==    by 0x4199622: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59AB8 is 0 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 15 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF1C: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x4199506: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::upper_bound(std::string const&) (stl_tree.h:1407)
==3461==    by 0x4199622: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==  Address 0x4F59B08 is 16 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 16 of 26:
==3461== Invalid read of size 4
==3461==    at 0x80708D0: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_begin() (stl_tree.h:466)
==3461==    by 0x41994D2: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::upper_bound(std::string const&) (stl_tree.h:1403)
==3461==    by 0x4199622: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::equal_range(std::string const&) (stl_tree.h:1441)
==3461==    by 0x419A420: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_tree.h:1213)
==3461==    by 0x419A489: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::erase(std::string const&) (stl_map.h:461)
==3461==    by 0x4198FD4: Extensible::Shrink(std::string const&) (base.cpp:33)
==3461==    by 0x48944E7: IdentRequestSocket::OnClose() (m_ident.cpp:78)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4E83530 is 16 bytes inside a block of size 952 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x4219287: userrec::~userrec() (users.cpp:391)
==3461==    by 0x421AC3B: void DELETE<userrec>(userrec*) (inspircd.h:74)
==3461==    by 0x429A51E: CullList::Apply() (cull_list.cpp:194)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 2 errors in context 17 of 26:
==3461== Invalid read of size 1
==3461==    at 0x409EF39: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BF33: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1325)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59AC4 is 12 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 18 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF1E: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BF33: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1325)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59AB8 is 0 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 19 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF1C: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BF33: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1325)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59B08 is 16 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 20 of 26:
==3461== Invalid read of size 4
==3461==    at 0x8071978: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_S_left(std::_Rb_tree_node_base*) (stl_tree.h:493)
==3461==    by 0x440BEB6: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1318)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x4F59B00 is 8 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 2 errors in context 21 of 26:
==3461== Invalid read of size 1
==3461==    at 0x409EF39: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BE9E: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1317)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59AC4 is 12 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 22 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF10: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BE9E: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1317)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59AB8 is 0 bytes inside a block of size 16 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x409EC5C: std::string::_Rep::_M_destroy(std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A1806: std::string::~string() (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8070652: std::pair<std::string const, char*>::~pair() (stl_pair.h:69)
==3461==    by 0x8073088: __gnu_cxx::new_allocator<std::pair<std::string const, char*> >::destroy(std::pair<std::string const, char*>*) (new_allocator.h:107)
==3461==    by 0x80772EC: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:391)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==
==3461== 2 errors in context 23 of 26:
==3461== Invalid read of size 4
==3461==    at 0x80708D0: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_begin() (stl_tree.h:466)
==3461==    by 0x440BE68: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1313)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==  Address 0x4E83530 is 16 bytes inside a block of size 952 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x4219287: userrec::~userrec() (users.cpp:391)
==3461==    by 0x421AC3B: void DELETE<userrec>(userrec*) (inspircd.h:74)
==3461==    by 0x429A51E: CullList::Apply() (cull_list.cpp:194)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 2 errors in context 24 of 26:
==3461== Invalid read of size 1
==3461==    at 0x4894392: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==  Address 0x4E83604 is 228 bytes inside a block of size 952 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x4219287: userrec::~userrec() (users.cpp:391)
==3461==    by 0x421AC3B: void DELETE<userrec>(userrec*) (inspircd.h:74)
==3461==    by 0x429A51E: CullList::Apply() (cull_list.cpp:194)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461== 3 errors in context 25 of 26:
==3461== Invalid read of size 4
==3461==    at 0x409EF0B: std::string::compare(std::string const&) const (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x8072D37: bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (basic_string.h:2213)
==3461==    by 0x8072D65: std::less<std::string>::operator()(std::string const&, std::string const&) const (stl_function.h:227)
==3461==    by 0x440BE9E: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_tree.h:1317)
==3461==    by 0x440BF98: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::find(std::string const&) (stl_map.h:534)
==3461==    by 0x45E231B: Extensible::GetExt(std::string const&) (base.h:154)
==3461==    by 0x48943E6: IdentRequestSocket::OnClose() (m_ident.cpp:75)
==3461==    by 0x41E6FE1: InspSocket::Close() (inspsocket.cpp:369)
==3461==    by 0x8069339: InspIRCd::InspSocketCull() (inspircd.cpp:1151)
==3461==    by 0x806CC30: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1143)
==3461==  Address 0x4F59B08 is 16 bytes inside a block of size 24 free'd
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x8077274: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, char*> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, char*> >*, unsigned) (new_allocator.h:94)
==3461==    by 0x80772A9: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:362)
==3461==    by 0x8077309: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::destroy_node(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:392)
==3461==    by 0x807737F: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, char*> >*) (stl_tree.h:1266)
==3461==    by 0x80773BE: std::_Rb_tree<std::string, std::pair<std::string const, char*>, std::_Select1st<std::pair<std::string const, char*> >, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~_Rb_tree() (stl_tree.h:578)
==3461==    by 0x807741A: std::map<std::string, char*, std::less<std::string>, std::allocator<std::pair<std::string const, char*> > >::~map() (stl_map.h:93)
==3461==    by 0x8077442: Extensible::~Extensible() (base.h:63)
==3461==    by 0x80774B1: EventHandler::~EventHandler() (socketengine.h:91)
==3461==    by 0x421F59C: connection::~connection() (connection.h:26)
==3461==
==3461== 4 errors in context 26 of 26:
==3461== Mismatched free() / delete / delete []
==3461==    at 0x4004E16: operator delete(void*) (vg_replace_malloc.c:244)
==3461==    by 0x46F775C: void DELETE<char>(char*) (inspircd.h:74)
==3461==    by 0x46F84B7: ModuleWaitPong::OnUserDisconnect(userrec*) (m_conn_waitpong.cpp:116)
==3461==    by 0x4299DA6: CullList::Apply() (cull_list.cpp:142)
==3461==    by 0x806CC25: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1140)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==  Address 0x51F73A0 is 0 bytes inside a block of size 11 alloc'd
==3461==    at 0x400591C: operator new[](unsigned) (vg_replace_malloc.c:195)
==3461==    by 0x46F7A3F: ModuleWaitPong::RandString(unsigned) (m_conn_waitpong.cpp:56)
==3461==    by 0x46F81A3: ModuleWaitPong::OnUserRegister(userrec*) (m_conn_waitpong.cpp:66)
==3461==    by 0x442A140: cmd_user::Handle(char const**, int, userrec*) (cmd_user.cpp:63)
==3461==    by 0x42B4394: CommandParser::ProcessCommand(userrec*, std::string&) (command_parse.cpp:365)
==3461==    by 0x42B4730: CommandParser::ProcessBuffer(std::string&, userrec*) (command_parse.cpp:431)
==3461==    by 0x429005F: InspIRCd::ProcessUser(userrec*) (userprocess.cpp:159)
==3461==    by 0x4217283: userrec::HandleEvent(EventType, int) (users.cpp:1953)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
--3461--
--3461-- supp:  784 dl-hack3
==3461==
==3461== IN SUMMARY: 50 errors from 26 contexts (suppressed: 784 from 1)
==3461==
==3461== malloc/free: in use at exit: 2,201,346 bytes in 13,755 blocks.
==3461== malloc/free: 145,083 allocs, 131,328 frees, 35,234,237 bytes allocated.
==3461==
==3461== searching for pointers to 13,755 not-freed blocks.
==3461== checked 2,276,468 bytes.
==3461==
==3461==
==3461== 5,464 (96 direct, 5,368 indirect) bytes in 6 blocks are definitely lost in loss record 260 of 483
==3461==    at 0x40054E5: malloc (vg_replace_malloc.c:149)
==3461==    by 0x4A4B84B: _gnutls_hash_init (in /usr/lib/libgnutls.so.13.3.0)
==3461==    by 0x4A4820C: gnutls_handshake (in /usr/lib/libgnutls.so.13.3.0)
==3461==    by 0x4A1A2A8: ModuleSSLGnuTLS::Handshake(issl_session*) (m_ssl_gnutls.cpp:604)
==3461==    by 0x4A1AD6E: ModuleSSLGnuTLS::OnRawSocketAccept(int, std::string const&, int) (m_ssl_gnutls.cpp:375)
==3461==    by 0x4280B70: ListenSocket::HandleEvent(EventType, int) (socket.cpp:111)
==3461==    by 0x428BF60: EPollEngine::DispatchEvents() (socketengine_epoll.cpp:147)
==3461==    by 0x806CC15: InspIRCd::DoOneIteration(bool) (inspircd.cpp:1137)
==3461==    by 0x806CC5C: InspIRCd::Run() (inspircd.cpp:1161)
==3461==    by 0x806F191: ircd(int, char**) (inspircd.cpp:1176)
==3461==
==3461==
==3461== 192 bytes in 6 blocks are definitely lost in loss record 274 of 483
==3461==    at 0x400591C: operator new[](unsigned) (vg_replace_malloc.c:195)
==3461==    by 0x41E8A93: InspSocket::DoConnect() (inspsocket.cpp:242)
==3461==    by 0x41E99FA: InspSocket::InspSocket(InspIRCd*, std::string const&, int, bool, unsigned long, std::string const&) (inspsocket.cpp:130)
==3461==    by 0x48942FD: IdentRequestSocket::IdentRequestSocket(InspIRCd*, userrec*, int, std::string const&) (m_ident.cpp:27)
==3461==    by 0x4895E59: ModuleIdent::OnUserRegister(userrec*) (m_ident.cpp:211)
==3461==    by 0x45A460C: cmd_nick::Handle(char const**, int, userrec*) (cmd_nick.cpp:175)
==3461==    by 0x42B4394: CommandParser::ProcessCommand(userrec*, std::string&) (command_parse.cpp:365)
==3461==    by 0x42B4730: CommandParser::ProcessBuffer(std::string&, userrec*) (command_parse.cpp:431)
==3461==    by 0x429005F: InspIRCd::ProcessUser(userrec*) (userprocess.cpp:159)
==3461==    by 0x4217283: userrec::HandleEvent(EventType, int) (users.cpp:1953)
==3461==
==3461==
==3461== 204 (24 direct, 180 indirect) bytes in 1 blocks are definitely lost in loss record 275 of 483
==3461==    at 0x4005C8C: operator new(unsigned) (vg_replace_malloc.c:163)
==3461==    by 0x4771DFB: ModuleHelpop::ReadConfig() (m_helpop.cpp:129)
==3461==    by 0x47733D5: ModuleHelpop::ModuleHelpop(InspIRCd*) (m_helpop.cpp:119)
==3461==    by 0x477360B: Factory::CreateModule(InspIRCd*) (m_helpop.cpp:189)
==3461==    by 0x806A6C8: InspIRCd::LoadModule(char const*) (inspircd.cpp:989)
==3461==    by 0x4261156: InspIRCd::LoadAllModules() (helperfuncs.cpp:516)
==3461==    by 0x806EB97: InspIRCd::InspIRCd(int, char**) (inspircd.cpp:637)
==3461==    by 0x806F176: ircd(int, char**) (inspircd.cpp:1175)
==3461==    by 0x806F213: main (inspircd.cpp:1194)
==3461==
==3461==
==3461== 2,136 bytes in 2 blocks are possibly lost in loss record 443 of 483
==3461==    at 0x40054E5: malloc (vg_replace_malloc.c:149)
==3461==    by 0xA16723: (within /usr/lib/libgcrypt.so.11.2.3)
==3461==    by 0xA16902: gcry_malloc (in /usr/lib/libgcrypt.so.11.2.3)
==3461==    by 0xA23093: (within /usr/lib/libgcrypt.so.11.2.3)
==3461==    by 0xA2326B: gcry_md_open (in /usr/lib/libgcrypt.so.11.2.3)
==3461==    by 0x4A67922: (within /usr/lib/libgnutls.so.13.3.0)
==3461==    by 0x4A4B987: _gnutls_hash_init (in /usr/lib/libgnutls.so.13.3.0)
==3461==    by 0x4A4820C: gnutls_handshake (in /usr/lib/libgnutls.so.13.3.0)
==3461==    by 0x4A1A2A8: ModuleSSLGnuTLS::Handshake(issl_session*) (m_ssl_gnutls.cpp:604)
==3461==    by 0x4A1AD6E: ModuleSSLGnuTLS::OnRawSocketAccept(int, std::string const&, int) (m_ssl_gnutls.cpp:375)
==3461==
==3461==
==3461== 22,267 bytes in 953 blocks are possibly lost in loss record 467 of 483
==3461==    at 0x4005C8C: operator new(unsigned) (vg_replace_malloc.c:163)
==3461==    by 0x8079760: __gnu_cxx::new_allocator<char>::allocate(unsigned, void const*) (new_allocator.h:88)
==3461==    by 0x807983A: std::basic_string<char, irc::irc_char_traits, std::allocator<char> >::_Rep::_S_create(unsigned, unsigned, std::allocator<char> const&) (basic_string.tcc:588)
==3461==    by 0x807A24A: char* std::basic_string<char, irc::irc_char_traits, std::allocator<char> >::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) (basic_string.tcc:150)
==3461==    by 0x807A2CC: char* std::basic_string<char, irc::irc_char_traits, std::allocator<char> >::_S_construct_aux<char const*>(char const*, char const*, std::allocator<char> const&, __false_type) (basic_string.h:1449)
==3461==    by 0x807A306: char* std::basic_string<char, irc::irc_char_traits, std::allocator<char> >::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&) (basic_string.h:1464)
==3461==    by 0x807A35C: std::basic_string<char, irc::irc_char_traits, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (basic_string.tcc:227)
==3461==    by 0x80694F1: InspIRCd::AddGlobalClone(userrec*) (inspircd.cpp:1254)
==3461==    by 0x4DCFA1B: TreeSocket::IntroduceClient(std::string const&, std::deque<std::string, std::allocator<std::string> >&) (treesocket1.cpp:1001)
==3461==    by 0x4DED06B: TreeSocket::ProcessLine(std::string&) (treesocket2.cpp:1187)
==3461==
==3461==
==3461== 115,648 bytes in 3,672 blocks are possibly lost in loss record 478 of 483
==3461==    at 0x4005C8C: operator new(unsigned) (vg_replace_malloc.c:163)
==3461==    by 0x409EC0A: std::string::_Rep::_S_create(unsigned, unsigned, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A001B: (within /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x40A00CE: std::string::string<__gnu_cxx::__normal_iterator<char*, std::string> >(__gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char*, std::string>, std::allocator<char> const&) (in /usr/lib/libstdc++.so.6.0.8)
==3461==    by 0x4270FCC: irc::tokenstream::GetToken(std::string&) (hashcomp.cpp:204)
==3461==    by 0x4DE0AFC: TreeSocket::Split(std::string const&, std::deque<std::string, std::allocator<std::string> >&) (treesocket2.cpp:955)
==3461==    by 0x4DEB50F: TreeSocket::ProcessLine(std::string&) (treesocket2.cpp:975)
==3461==    by 0x4DCB9F6: TreeSocket::OnDataReady() (treesocket1.cpp:1267)
==3461==    by 0x41E8643: InspSocket::Poll() (inspsocket.cpp:657)
==3461==    by 0x41E881A: InspSocket::HandleEvent(EventType, int) (inspsocket.cpp:726)
==3461==
==3461== LEAK SUMMARY:
==3461==    definitely lost: 312 bytes in 13 blocks.
==3461==    indirectly lost: 5,548 bytes in 15 blocks.
==3461==      possibly lost: 140,051 bytes in 4,627 blocks.
==3461==    still reachable: 2,055,435 bytes in 9,100 blocks.
==3461==         suppressed: 0 bytes in 0 blocks.
==3461== Reachable blocks (those to which a pointer was found) are not shown.
==3461== To see them, rerun with: --leak-check=full --show-reachable=yes
--3461--  memcheck: sanity checks: 5605 cheap, 225 expensive
--3461--  memcheck: auxmaps: 0 auxmap entries (0k, 0M) in use
--3461--  memcheck: auxmaps: 0 searches, 0 comparisons
--3461--  memcheck: SMs: n_issued      = 333 (5328k, 5M)
--3461--  memcheck: SMs: n_deissued    = 0 (0k, 0M)
--3461--  memcheck: SMs: max_noaccess  = 65535 (1048560k, 1023M)
--3461--  memcheck: SMs: max_undefined = 7 (112k, 0M)
--3461--  memcheck: SMs: max_defined   = 84 (1344k, 1M)
--3461--  memcheck: SMs: max_non_DSM   = 333 (5328k, 5M)
--3461--  memcheck: max sec V bit nodes:    0 (0k, 0M)
--3461--  memcheck: set_sec_vbits8 calls: 0 (new: 0, updates: 0)
--3461--  memcheck: max shadow mem size:   5632k, 5M
--3461-- translate:            fast SP updates identified: 78,280 ( 90.3%)
--3461-- translate:   generic_known SP updates identified: 6,562 (  7.5%)
--3461-- translate: generic_unknown SP updates identified: 1,816 (  2.0%)
--3461--     tt/tc: 448,061 tt lookups requiring 1,461,819 probes
--3461--     tt/tc: 448,061 fast-cache updates, 3 flushes
--3461--  transtab: new        44,498 (1,054,788 -> 17,451,945; ratio 165:10) [0 scs]
--3461--  transtab: dumped     0 (0 -> ??)
--3461--  transtab: discarded  8 (187 -> ??)
--3461-- scheduler: 560,581,428 jumps (bb entries).
--3461-- scheduler: 5,605/707,815 major/minor sched events.
--3461--    sanity: 5606 cheap, 225 expensive checks.
--3461--    exectx: 30,011 lists, 5,572 contexts (avg 0 per list)
--3461--    exectx: 276,962 searches, 275,299 full compares (993 per 1000)
--3461--    exectx: 1,545,009 cmp2, 4,455 cmp4, 0 cmpAll