Diff for /libaitrpc/src/srv.c between versions 1.20.4.2 and 1.20.4.3

version 1.20.4.2, 2013/11/13 12:18:43 version 1.20.4.3, 2013/11/14 13:37:08
Line 165  txPacket(sched_task_t *task) Line 165  txPacket(sched_task_t *task)
         struct tagRPCCall *rpc = (struct tagRPCCall*) buf;          struct tagRPCCall *rpc = (struct tagRPCCall*) buf;
         int ret, estlen, wlen = sizeof(struct tagRPCCall);          int ret, estlen, wlen = sizeof(struct tagRPCCall);
         struct pollfd pfd;          struct pollfd pfd;
   #ifdef TCP_SESSION_TIMEOUT
           struct timespec ts = { DEF_RPC_TIMEOUT, 0 };
   
           schedCancelby(TASK_ROOT(task), taskTIMER, CRITERIA_DATA, TASK_ARG(task), NULL);
           schedTimer(TASK_ROOT(task), cbProto[s->srv_proto][CB_CLOSECLIENT], 
                            TASK_ARG(task), ts, TASK_ARG(task), 0);
   #endif
   
         if (rpc->call_argc) {          if (rpc->call_argc) {
                 f = rpc_srv_getCall(s, ntohs(rpc->call_tag));                  f = rpc_srv_getCall(s, ntohs(rpc->call_tag));
                 if (!f) {                  if (!f) {
Line 305  rxPacket(sched_task_t *task) Line 312  rxPacket(sched_task_t *task)
         u_char *buf = AIT_GET_BUF(&c->cli_buf);          u_char *buf = AIT_GET_BUF(&c->cli_buf);
         struct tagRPCCall *rpc = (struct tagRPCCall*) buf;          struct tagRPCCall *rpc = (struct tagRPCCall*) buf;
         struct pollfd pfd;          struct pollfd pfd;
   #ifdef TCP_SESSION_TIMEOUT
           struct timespec ts = { DEF_RPC_TIMEOUT, 0 };
   
           schedCancelby(TASK_ROOT(task), taskTIMER, CRITERIA_DATA, TASK_ARG(task), NULL);
           schedTimer(TASK_ROOT(task), cbProto[s->srv_proto][CB_CLOSECLIENT], 
                            TASK_ARG(task), ts, TASK_ARG(task), 0);
   #endif
   
         memset(buf, 0, sizeof(struct tagRPCCall));          memset(buf, 0, sizeof(struct tagRPCCall));
         rlen = recv(TASK_FD(task), rpc, sizeof(struct tagRPCCall), MSG_PEEK);          rlen = recv(TASK_FD(task), rpc, sizeof(struct tagRPCCall), MSG_PEEK);
         if (rlen < sizeof(struct tagRPCCall)) {          if (rlen < sizeof(struct tagRPCCall)) {
Line 387  acceptClients(sched_task_t *task) Line 401  acceptClients(sched_task_t *task)
         rpc_cli_t *c = NULL;          rpc_cli_t *c = NULL;
         socklen_t salen = sizeof(sockaddr_t);          socklen_t salen = sizeof(sockaddr_t);
         int sock;          int sock;
   #ifdef TCP_SESSION_TIMEOUT
           struct timespec ts = { DEF_RPC_TIMEOUT, 0 };
   #endif
   
         c = _allocClient(srv, NULL);          c = _allocClient(srv, NULL);
         if (!c) {          if (!c) {
Line 408  acceptClients(sched_task_t *task) Line 425  acceptClients(sched_task_t *task)
         } else          } else
                 fcntl(c->cli_sock, F_SETFL, fcntl(c->cli_sock, F_GETFL) | O_NONBLOCK);                  fcntl(c->cli_sock, F_SETFL, fcntl(c->cli_sock, F_GETFL) | O_NONBLOCK);
   
   #ifdef TCP_SESSION_TIMEOUT
           /* armed timer for close stateless connection */
           schedCancelby(TASK_ROOT(task), taskTIMER, CRITERIA_DATA, c, NULL);
           schedTimer(TASK_ROOT(task), cbProto[srv->srv_proto][CB_CLOSECLIENT], c, 
                           ts, c, 0);
   #endif
         schedRead(TASK_ROOT(task), cbProto[srv->srv_proto][CB_RXPACKET], c,           schedRead(TASK_ROOT(task), cbProto[srv->srv_proto][CB_RXPACKET], c, 
                         c->cli_sock, NULL, 0);                          c->cli_sock, NULL, 0);
 end:  end:

Removed from v.1.20.4.2  
changed lines
  Added in v.1.20.4.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>