From 59fd3a717741137c2b00562d110b120fbc801cb3 Mon Sep 17 00:00:00 2001 From: Jeff Hill Date: Thu, 16 Apr 1992 16:48:55 +0000 Subject: [PATCH] set state to ca_conn before sending monitor request --- src/ca/service.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/ca/service.c b/src/ca/service.c index c1a20494e..d5aa65a31 100644 --- a/src/ca/service.c +++ b/src/ca/service.c @@ -33,6 +33,9 @@ /* field. */ /* 031692 joh When bad cmd in message detected disconnect */ /* instead of terminating the client */ +/* 041692 joh set state to cs_conn before caling */ +/* ca_request_event() so their channel */ +/* connect tests wont fail */ /* */ /*_begin */ /************************************************************************/ @@ -604,6 +607,13 @@ struct in_addr *pnet_addr; lstAdd(&iiu[newiocix].chidlist, chan); } + /* + * set state to cs_conn before caling + * ca_request_event() so their channel + * connect tests wont fail + */ + prev_cs = chan->state; + chan->state = cs_conn; /* * claim the resource in the IOC @@ -612,7 +622,6 @@ struct in_addr *pnet_addr; */ issue_claim_channel(&iiu[chan->iocix], chan); - /* * NOTE: monitor and callback reissue must occur prior to calling * their connection routine otherwise they could be requested twice. @@ -622,11 +631,12 @@ struct in_addr *pnet_addr; if(pend_read_list.count){ for( pevent = (evid) pend_read_list.node.next; pevent; - pevent = (evid) pevent->node.next) + pevent = (evid) pevent->node.next){ if(pevent->chan == chan){ issue_get_callback(pevent); - cac_send_msg(); } + } + cac_send_msg(); } #endif @@ -639,9 +649,6 @@ struct in_addr *pnet_addr; cac_send_msg(); } - prev_cs = chan->state; - chan->state = cs_conn; - UNLOCK; if(chan->connection_func){