-/* $Id: yaz-proxy.cpp,v 1.62 2006-04-26 11:59:11 adam Exp $
+/* $Id: yaz-proxy.cpp,v 1.67 2006-06-09 09:01:31 adam Exp $
Copyright (c) 1998-2006, Index Data.
This file is part of the yazproxy.
char session_str[200];
const char *peername = the_PDU_Observable->getpeername();
+ if (!peername)
+ peername = "nullpeer";
+
if (m_log_mask & PROXY_LOG_IP_CLIENT)
sprintf(session_str, "%ld:%d %.80s %d ",
(long) time(0), m_session_no, peername, 0);
new_proxy->set_default_target(m_default_target);
new_proxy->m_max_clients = m_max_clients;
new_proxy->m_log_mask = m_log_mask;
+ new_proxy->m_session_no = m_session_no;
+#if 0
+ // in case we want to watch a particular client..
if (!strcmp(peername, "tcp:163.121.19.82")) // NIS GROUP
new_proxy->m_log_mask = 255;
+#endif
new_proxy->set_APDU_log(get_APDU_log());
if (new_proxy->m_log_mask & PROXY_LOG_APDU_CLIENT)
m_client_idletime = client_idletime;
timeout(m_client_idletime);
}
+
+ // get those FILE descriptors available
+ m_parent->low_socket_close();
if (cql2rpn_fname)
m_cql2rpn.set_pqf_file(cql2rpn_fname);
+ // reserve them again
+ m_parent->low_socket_open();
+
if (negotiation_charset || negotiation_lang || default_client_query_charset)
{
set_proxy_negotiation(negotiation_charset,
handle_charset_lang_negotiation(apdu2);
+ if (m_timeout_mode == timeout_busy)
+ m_timeout_mode = timeout_normal;
send_to_client(apdu2);
- m_timeout_mode = timeout_normal;
return;
}
}
*imv1 = '\0';
if (imv0)
strcat(imv1, imv0);
+#ifdef VERSION
strcat(imv1, "/" VERSION);
+#endif
ir->implementationVersion = imv1;
// apply YAZ Proxy implementation name