[BACK]Return to addrmatch.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/addrmatch.c between version 1.13 and 1.14

version 1.13, 2016/09/21 16:55:42 version 1.14, 2018/07/31 03:07:24
Line 201 
Line 201 
 static int  static int
 addr_pton(const char *p, struct xaddr *n)  addr_pton(const char *p, struct xaddr *n)
 {  {
         struct addrinfo hints, *ai;          struct addrinfo hints, *ai = NULL;
           int ret = -1;
   
         memset(&hints, '\0', sizeof(hints));          memset(&hints, '\0', sizeof(hints));
         hints.ai_flags = AI_NUMERICHOST;          hints.ai_flags = AI_NUMERICHOST;
   
         if (p == NULL || getaddrinfo(p, NULL, &hints, &ai) != 0)          if (p == NULL || getaddrinfo(p, NULL, &hints, &ai) != 0)
                 return -1;                  goto out;
   
         if (ai == NULL || ai->ai_addr == NULL)          if (ai == NULL || ai->ai_addr == NULL)
                 return -1;                  goto out;
           if (n != NULL && addr_sa_to_xaddr(ai->ai_addr, ai->ai_addrlen, n) == -1)
         if (n != NULL &&                  goto out;
             addr_sa_to_xaddr(ai->ai_addr, ai->ai_addrlen, n) == -1) {          /* success */
           ret = 0;
    out:
           if (ai != NULL)
                 freeaddrinfo(ai);                  freeaddrinfo(ai);
                 return -1;          return ret;
         }  
   
         freeaddrinfo(ai);  
         return 0;  
 }  }
   
 /*  /*

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.14