X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Ffilter_frontend_net.cpp;h=c744a66511432556bdabca2e70fe6d3eaa50d60b;hb=b54a57c7af29c89371aa65dc766adac9ed61f58c;hp=0fef9e6689126f6a2ae6f81361b944b936b7a24f;hpb=b02df3fd0849c5222081013420c18f949c55f9c5;p=metaproxy-moved-to-github.git diff --git a/src/filter_frontend_net.cpp b/src/filter_frontend_net.cpp index 0fef9e6..c744a66 100644 --- a/src/filter_frontend_net.cpp +++ b/src/filter_frontend_net.cpp @@ -277,6 +277,12 @@ yf::FrontendNet::ZAssocChild::ZAssocChild( const char *peername = PDU_Observable->getpeername(); if (!peername) peername = "unknown"; + else + { + const char *cp = strchr(peername, ':'); + if (cp) + peername = cp + 1; + } m_origin.set_tcpip_address(std::string(peername), m_session.id()); timeout(m_p->m_session_timeout); } @@ -594,9 +600,14 @@ void yf::FrontendNet::process(mp::Package &package) const while (m_p->mySocketManager.processEvent() > 0) { if (m_p->m_stop_signo == SIGTERM) + { + yaz_log(YLOG_LOG, "metaproxy received SIGTERM"); break; /* stop right away */ + } +#ifndef WIN32 if (m_p->m_stop_signo == SIGUSR1) { /* just stop listeners and cont till all sessions are done*/ + yaz_log(YLOG_LOG, "metaproxy received SIGUSR1"); m_p->m_stop_signo = 0; if (m_p->az) { @@ -606,6 +617,7 @@ void yf::FrontendNet::process(mp::Package &package) const yaz_daemon_stop(); } } +#endif int no = m_p->mySocketManager.getNumberOfObservers(); if (no <= 1) break; @@ -715,7 +727,9 @@ void yf::FrontendNet::set_ports(std::vector &ports) // Create yf::FrontendNet::ZAssocServer for each port size_t i; - for (i = 0; im_ports.size(); i++) + for (i = 0; i < m_p->m_ports.size(); i++) + m_p->az[i] = 0; + for (i = 0; i < m_p->m_ports.size(); i++) { // create a PDU assoc object (one per yf::FrontendNet::ZAssocServer) yazpp_1::PDU_Assoc *as = new yazpp_1::PDU_Assoc(&m_p->mySocketManager);