The association_state ASSOC_UP was last used in YAZ 2.0.30. It
was probably removed by mistake. We enable it - but for Z39.50
sessions only, so that when a timeout occurs we can send a Z39.50
close PDU again. The session timeout is now also logged at "session"
log level.
{
if (assoc->state != ASSOC_UP)
{
{
if (assoc->state != ASSOC_UP)
{
- yaz_log(YLOG_DEBUG, "Final timeout - closing connection.");
+ yaz_log(log_session, "Timeout. Closing connection");
/* do we need to lod this at all */
cs_close(conn);
destroy_association(assoc);
/* do we need to lod this at all */
cs_close(conn);
destroy_association(assoc);
- yaz_log(log_sessiondetail,
- "Session idle too long. Sending close.");
+ yaz_log(log_sessiondetail, "Timeout. Sending Z39.50 Close");
do_close(assoc, Z_Close_lackOfActivity, 0);
}
return;
do_close(assoc, Z_Close_lackOfActivity, 0);
}
return;
binitres->errstring);
*resp->result = 0;
}
binitres->errstring);
*resp->result = 0;
}
+ else
+ assoc->state = ASSOC_UP;
+
if (log_request)
{
if (!req->idAuthentication)
if (log_request)
{
if (!req->idAuthentication)
- ASSOC_NEW, /* not initialized yet */
- ASSOC_UP, /* normal operation */
+ ASSOC_NEW, /* not initialized yet or HTTP session */
+ ASSOC_UP, /* Z39.50 session is UP */
ASSOC_DEAD /* dead. Close if input arrives */
} association_state;
ASSOC_DEAD /* dead. Close if input arrives */
} association_state;