Ticket #458: ticket 458.patch

File ticket 458.patch, 1.2 KB (added by nanang, 12 years ago)
  • pjlib/src/pj/ip_helper_win32.c

     
    220220        (*p_cnt)++; 
    221221    } 
    222222 
     223    if (*p_cnt == 0) 
     224        return PJ_ENOTFOUND; 
     225 
    223226    return PJ_SUCCESS; 
    224227} 
    225228 
  • pjlib/src/pj/addr_resolv_sock.c

     
    118118 
    119119#else   /* PJ_SOCK_HAS_GETADDRINFO */ 
    120120 
    121     PJ_ASSERT_RETURN(count, PJ_EINVAL); 
     121    PJ_ASSERT_RETURN(count && *count, PJ_EINVAL); 
    122122 
     123    /* Check if nodename is IP address */ 
     124    pj_bzero(&ai[0], sizeof(ai[0])); 
     125    ai[0].ai_addr.addr.sa_family = af; 
     126    if (pj_inet_pton(af, nodename, pj_sockaddr_get_addr(&ai[0].ai_addr)) ==  
     127        PJ_SUCCESS)  
     128    { 
     129        pj_str_t tmp = {ai[0].ai_canonname, PJ_MAX_HOSTNAME}; 
     130 
     131        pj_strncpy_with_null(&tmp, nodename, PJ_MAX_HOSTNAME); 
     132        ai[0].ai_addr.addr.sa_family = (pj_uint16_t)af; 
     133        *count = 1; 
     134 
     135        return PJ_SUCCESS; 
     136    } 
     137 
    123138    if (af == PJ_AF_INET || af == PJ_AF_UNSPEC) { 
    124139        pj_hostent he; 
    125140        unsigned i, max_count;