FACT++  1.0
void release_all_requests ( int  conn_id,
CLIENT clip 
)

Definition at line 2157 of file dis_old.c.

References dis_dns_ent::dis_client_id, dis_update_service(), dll_get_next(), dll_remove(), dna_close(), cli_ent::dnsp, Memory::free(), Last_client, reqp_ent::prev, release_request(), reqp_ent::reqp, and cli_ent::requestp_head.

Referenced by release_conn().

2158 {
2159  register REQUEST_PTR *reqpp, *auxp;
2160  register REQUEST *reqp;
2161  int found = 0;
2162  int release_request();
2163  DIS_DNS_CONN *dnsp;
2164 
2165  DISABLE_AST;
2166  if(clip)
2167  {
2168  reqpp = clip->requestp_head;
2169  while( (reqpp = (REQUEST_PTR *) dll_get_next((DLL *)clip->requestp_head,
2170  (DLL *) reqpp)) )
2171  {
2172  auxp = reqpp->prev;
2173  reqp = (REQUEST *) reqpp->reqp;
2174  release_request(reqp, reqpp, 0);
2175  found = 1;
2176  reqpp = auxp;
2177  }
2178  dnsp = clip->dnsp;
2179  dll_remove(clip);
2180  free(clip->requestp_head);
2181  free(clip);
2182  }
2183  if(found)
2184  {
2185  Last_client = -conn_id;
2186  if(dnsp->dis_client_id)
2188  }
2189  dna_close(conn_id);
2190  ENABLE_AST;
2191 }
int dna_close(int conn_id)
Definition: dna.c:835
int release_request(REQUEST *reqp, REQUEST_PTR *reqpp, int remove)
Definition: dis_old.c:2341
void dll_remove(DLL *item)
Definition: dll.c:100
static int Last_client
Definition: dis_old.c:147
Definition: dim.h:530
DIS_DNS_CONN * dnsp
Definition: dis.c:103
int dis_update_service(unsigned service_id)
Definition: dis_old.c:1517
REQUEST_PTR * requestp_head
Definition: dis.c:102
void free(void *mem)
DLL * dll_get_next(DLL *head, DLL *item)
Definition: dll.c:66
Definition: dis.c:92
REQUEST * reqp
Definition: dis.c:95
struct reqp_ent * prev
Definition: dis.c:94
unsigned int dis_client_id
Definition: dis.c:48
Definition: dis.c:52

+ Here is the call graph for this function:

+ Here is the caller graph for this function: