Diff for /libaitrpc/src/cli.c between versions 1.8.2.1 and 1.9.2.1

version 1.8.2.1, 2012/05/11 12:53:35 version 1.9.2.1, 2012/05/14 15:22:22
Line 115  rpc_cli_openBLOBClient(rpc_cli_t * __restrict rpccli,  Line 115  rpc_cli_openBLOBClient(rpc_cli_t * __restrict rpccli, 
                 return NULL;                  return NULL;
         }          }
   
           cli->cli_kill = enable;
         return cli;          return cli;
 }  }
   
Line 131  rpc_cli_closeBLOBClient(rpc_cli_t * __restrict cli) Line 132  rpc_cli_closeBLOBClient(rpc_cli_t * __restrict cli)
                 rpc_SetErr(EINVAL, "Can`t close connection because parameter is null!");                  rpc_SetErr(EINVAL, "Can`t close connection because parameter is null!");
                 return;                  return;
         }          }
           cli->cli_kill = disable;
   
         shutdown(cli->cli_sock, SHUT_RDWR);          shutdown(cli->cli_sock, SHUT_RDWR);
         close(cli->cli_sock);          close(cli->cli_sock);
Line 158  rpc_cli_openClient(u_int ProgID, u_int ProcID, int net Line 160  rpc_cli_openClient(u_int ProgID, u_int ProcID, int net
                 u_short family, const char *csHost, u_short Port)                  u_short family, const char *csHost, u_short Port)
 {  {
         rpc_cli_t *cli = NULL;          rpc_cli_t *cli = NULL;
         struct hostent *host = NULL;  
         io_sockaddr_t sa;          io_sockaddr_t sa;
         int n;          int n;
   
        if (!csHost || (family != AF_INET && family != AF_INET6 && family != AF_LOCAL)) {        if (!io_gethostbyname(csHost, Port, &sa))
                rpc_SetErr(EINVAL, "Invalid parameters can`t connect to RPC server ..."); 
                 return NULL;                  return NULL;
         }  
         if (!Port)          if (!Port)
                 Port = RPC_DEFPORT;                  Port = RPC_DEFPORT;
         if (!netBuf)          if (!netBuf)
                 netBuf = BUFSIZ;                  netBuf = BUFSIZ;
         if (!Timeout)          if (!Timeout)
                 Timeout = DEF_RPC_TIMEOUT;                  Timeout = DEF_RPC_TIMEOUT;
         if (csHost && family != AF_LOCAL) {  
                 host = gethostbyname2(csHost, family);  
                 if (!host) {  
                         rpc_SetErr(h_errno, "%s", hstrerror(h_errno));  
                         return NULL;  
                 }  
         }  
         memset(&sa, 0, sizeof sa);  
         sa.sa.sa_family = family;  
         switch (family) {  
                 case AF_INET:  
                         sa.sin.sin_len = sizeof(struct sockaddr_in);  
                         sa.sin.sin_port = htons(Port);  
                         if (csHost)  
                                 memcpy(&sa.sin.sin_addr, host->h_addr, host->h_length);  
                         break;  
                 case AF_INET6:  
                         sa.sin6.sin6_len = sizeof(struct sockaddr_in6);  
                         sa.sin6.sin6_port = htons(Port);  
                         if (csHost)  
                                 memcpy(&sa.sin6.sin6_addr, host->h_addr, host->h_length);  
                         break;  
                 case AF_LOCAL:  
                         sa.sun.sun_len = sizeof(struct sockaddr_un);  
                         if (csHost)  
                                 strlcpy(sa.sun.sun_path, csHost, sizeof sa.sun.sun_path);  
                         break;  
                 default:  
                         rpc_SetErr(EINVAL, "Invalid parameters can`t connect to RPC server ...");  
                         return NULL;  
         }  
   
         cli = malloc(sizeof(rpc_cli_t));          cli = malloc(sizeof(rpc_cli_t));
         if (!cli) {          if (!cli) {
Line 227  rpc_cli_openClient(u_int ProgID, u_int ProcID, int net Line 195  rpc_cli_openClient(u_int ProgID, u_int ProcID, int net
         memcpy(&cli->cli_sa, &sa, sizeof cli->cli_sa);          memcpy(&cli->cli_sa, &sa, sizeof cli->cli_sa);
   
         /* connect to RPC server */          /* connect to RPC server */
        cli->cli_sock = socket(family, SOCK_STREAM, 0);        cli->cli_sock = socket(cli->cli_sa.sa.sa_family, SOCK_STREAM, 0);
         if (cli->cli_sock == -1) {          if (cli->cli_sock == -1) {
                 LOGERR;                  LOGERR;
                 free(cli->cli_parent);                  free(cli->cli_parent);

Removed from v.1.8.2.1  
changed lines
  Added in v.1.9.2.1


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