Diff for /libaitrpc/src/srv.c between versions 1.3.2.3 and 1.3.2.7

version 1.3.2.3, 2011/08/18 21:20:54 version 1.3.2.7, 2011/08/19 08:24:13
Line 156  rpc_srv_dispatchCall(void *arg) Line 156  rpc_srv_dispatchCall(void *arg)
                         if ((ret = rpc_srv_execCall(f, rpc, v)) == -1)                          if ((ret = rpc_srv_execCall(f, rpc, v)) == -1)
                                 ret = -9;                                  ret = -9;
                         else                          else
                                argc = rpc_srv_getValsCall(f, &vals);                                argc = rpc_srv_getVars(f, &vals);
 makeReply:  makeReply:
                 memset(buf, 0, BUFSIZ);                  memset(buf, 0, BUFSIZ);
                 rrpc = (struct tagRPCRet*) buf;                  rrpc = (struct tagRPCRet*) buf;
Line 174  makeReply: Line 174  makeReply:
                         if (argc * sizeof(rpc_val_t) > BUFSIZ - Limit) {                          if (argc * sizeof(rpc_val_t) > BUFSIZ - Limit) {
                                 for (i = 0; i < argc; i++)                                  for (i = 0; i < argc; i++)
                                         RPC_FREE_VAL(&vals[i]);                                          RPC_FREE_VAL(&vals[i]);
                                rpc_srv_freeValsCall(f);                                rpc_srv_freeVars(f);
                                 vals = NULL;                                  vals = NULL;
                                 argc = 0;                                  argc = 0;
                                 ret = -7;                                  ret = -7;
Line 223  makeReply: Line 223  makeReply:
   
                                 RPC_FREE_VAL(&vals[i]);                                  RPC_FREE_VAL(&vals[i]);
                         }                          }
                        rpc_srv_freeValsCall(f);                        rpc_srv_freeVars(f);
                         vals = NULL;                          vals = NULL;
                         argc = 0;                          argc = 0;
                 }                  }
Line 421  rpc_srv_initBLOBServer(rpc_srv_t * __restrict srv, int Line 421  rpc_srv_initBLOBServer(rpc_srv_t * __restrict srv, int
         }          }
   
         /* create BLOB server socket */          /* create BLOB server socket */
           srv->srv_blob.server.cli_type = sockType ? sockType : SOCK_STREAM;
         srv->srv_blob.server.cli_sock = socket(srv->srv_server.cli_sa.sa_family,           srv->srv_blob.server.cli_sock = socket(srv->srv_server.cli_sa.sa_family, 
                        sockType ? sockType : SOCK_STREAM, 0);                        srv->srv_blob.server.cli_type, 0);
         if (srv->srv_blob.server.cli_sock == -1) {          if (srv->srv_blob.server.cli_sock == -1) {
                 LOGERR;                  LOGERR;
                 return -1;                  return -1;
Line 535  rpc_srv_execBLOBServer(rpc_srv_t * __restrict srv) Line 536  rpc_srv_execBLOBServer(rpc_srv_t * __restrict srv)
                         return -1;                          return -1;
                 }                  }
   
        while (!blob_Kill && !rpc_Kill) {        while (srv->srv_blob.state != kill && srv->srv_kill != kill) {
                 for (c = srv->srv_blob.clients, i = 0; i < srv->srv_numcli && c; i++, c++)                  for (c = srv->srv_blob.clients, i = 0; i < srv->srv_numcli && c; i++, c++)
                         if (!c->cli_sa.sa_family)                          if (!c->cli_sa.sa_family)
                                 break;                                  break;
Line 673  rpc_srv_initServer(u_int regProgID, u_int regProcID, i Line 674  rpc_srv_initServer(u_int regProgID, u_int regProcID, i
         }          }
   
         /* create server socket */          /* create server socket */
        srv->srv_server.cli_sock = socket(family, sockType ? sockType : SOCK_STREAM, 0);        srv->srv_server.cli_type = sockType ? sockType : SOCK_STREAM;
         srv->srv_server.cli_sock = socket(family, srv->srv_server.cli_type, 0);
         if (srv->srv_server.cli_sock == -1) {          if (srv->srv_server.cli_sock == -1) {
                 LOGERR;                  LOGERR;
                 free(srv);                  free(srv);
                 return NULL;                  return NULL;
        } else        }
                srv->srv_server.cli_type = sockType; 
         if (setsockopt(srv->srv_server.cli_sock, SOL_SOCKET, SO_REUSEADDR, &n, sizeof n) == -1) {          if (setsockopt(srv->srv_server.cli_sock, SOL_SOCKET, SO_REUSEADDR, &n, sizeof n) == -1) {
                 LOGERR;                  LOGERR;
                 close(srv->srv_server.cli_sock);                  close(srv->srv_server.cli_sock);
Line 786  rpc_srv_execServer(rpc_srv_t * __restrict srv) Line 787  rpc_srv_execServer(rpc_srv_t * __restrict srv)
                         return -1;                          return -1;
                 }                  }
   
        while (!rpc_Kill) {        while (srv->srv_kill != kill) {
                 for (c = srv->srv_clients, i = 0; i < srv->srv_numcli && c; i++, c++)                  for (c = srv->srv_clients, i = 0; i < srv->srv_numcli && c; i++, c++)
                         if (!c->cli_sa.sa_family)                          if (!c->cli_sa.sa_family)
                                 break;                                  break;

Removed from v.1.3.2.3  
changed lines
  Added in v.1.3.2.7


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