projects
/
yazpp-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change "Yaz" to ID's preferred "YAZ"
[yazpp-moved-to-github.git]
/
src
/
yaz-proxy.cpp
diff --git
a/src/yaz-proxy.cpp
b/src/yaz-proxy.cpp
index
217b660
..
f61547a
100644
(file)
--- a/
src/yaz-proxy.cpp
+++ b/
src/yaz-proxy.cpp
@@
-2,14
+2,14
@@
* Copyright (c) 1998-2001, Index Data.
* See the file LICENSE for details.
*
* Copyright (c) 1998-2001, Index Data.
* See the file LICENSE for details.
*
- * $Id: yaz-proxy.cpp,v 1.35 2002-09-10 13:00:58 adam Exp $
+ * $Id: yaz-proxy.cpp,v 1.37 2002-10-23 10:15:18 adam Exp $
*/
#include <assert.h>
#include <time.h>
#include <yaz/log.h>
*/
#include <assert.h>
#include <time.h>
#include <yaz/log.h>
-#include <yaz++/yaz-proxy.h>
+#include <yaz++/proxy.h>
Yaz_Proxy::Yaz_Proxy(IYaz_PDU_Observable *the_PDU_Observable) :
Yaz_Z_Assoc(the_PDU_Observable)
Yaz_Proxy::Yaz_Proxy(IYaz_PDU_Observable *the_PDU_Observable) :
Yaz_Z_Assoc(the_PDU_Observable)
@@
-24,6
+24,7
@@
Yaz_Proxy::Yaz_Proxy(IYaz_PDU_Observable *the_PDU_Observable) :
m_proxy_authentication = 0;
m_max_clients = 50;
m_seed = time(0);
m_proxy_authentication = 0;
m_max_clients = 50;
m_seed = time(0);
+ m_idletime = 600;
m_optimize = xstrdup ("1");
}
m_optimize = xstrdup ("1");
}
@@
-55,7
+56,7
@@
IYaz_PDU_Observer *Yaz_Proxy::sessionNotify(IYaz_PDU_Observable
{
Yaz_Proxy *new_proxy = new Yaz_Proxy(the_PDU_Observable);
new_proxy->m_parent = this;
{
Yaz_Proxy *new_proxy = new Yaz_Proxy(the_PDU_Observable);
new_proxy->m_parent = this;
- new_proxy->timeout(500);
+ new_proxy->timeout(m_idletime);
new_proxy->set_proxy_target(m_proxyTarget);
new_proxy->set_APDU_log(get_APDU_log());
new_proxy->set_proxy_authentication(m_proxy_authentication);
new_proxy->set_proxy_target(m_proxyTarget);
new_proxy->set_APDU_log(get_APDU_log());
new_proxy->set_proxy_authentication(m_proxy_authentication);
@@
-147,7
+148,7
@@
Yaz_ProxyClient *Yaz_Proxy::get_client(Z_APDU *apdu)
c->m_last_resultCount = 0;
c->m_sr_transform = 0;
c->m_waiting = 0;
c->m_last_resultCount = 0;
c->m_sr_transform = 0;
c->m_waiting = 0;
- c->timeout(600);
+ c->timeout(m_idletime);
}
c->m_seqno = parent->m_seqno;
if (c->m_server && c->m_server != this)
}
c->m_seqno = parent->m_seqno;
if (c->m_server && c->m_server != this)
@@
-252,7
+253,7
@@
Yaz_ProxyClient *Yaz_Proxy::get_client(Z_APDU *apdu)
c->m_last_ok = 0;
c->m_sr_transform = 0;
c->m_waiting = 0;
c->m_last_ok = 0;
c->m_sr_transform = 0;
c->m_waiting = 0;
- c->timeout(10);
+ c->timeout(20);
(parent->m_seqno)++;
}
(parent->m_seqno)++;
}
@@
-430,23
+431,24
@@
void Yaz_Proxy::shutdown()
// only keep if keep_alive flag and cookie is set...
if (m_keepalive && m_client && m_client->m_cookie[0])
{
// only keep if keep_alive flag and cookie is set...
if (m_keepalive && m_client && m_client->m_cookie[0])
{
- if (m_client->m_waiting == 2)
- abort();
+ yaz_log (LOG_LOG, "shutdown (client to proxy) keepalive %s",
+ m_client->get_hostname());
+ assert (m_client->m_waiting != 2);
// Tell client (if any) that no server connection is there..
m_client->m_server = 0;
// Tell client (if any) that no server connection is there..
m_client->m_server = 0;
- yaz_log (LOG_LOG, "shutdown (client to proxy) keepalive %s", m_client->get_hostname());
+
}
else if (m_client)
{
}
else if (m_client)
{
- if (m_client->m_waiting == 2)
- abort();
- yaz_log (LOG_LOG, "shutdown (client to proxy) close %s", m_client->get_hostname());
+ yaz_log (LOG_LOG, "shutdown (client to proxy) close %s",
+ m_client->get_hostname());
+ assert (m_client->m_waiting != 2);
delete m_client;
}
else if (!m_parent)
{
yaz_log (LOG_LOG, "shutdown (client to proxy) bad state");
delete m_client;
}
else if (!m_parent)
{
yaz_log (LOG_LOG, "shutdown (client to proxy) bad state");
- abort();
+ assert (m_parent);
}
else
{
}
else
{