Ignore:
Timestamp:
Dec 28, 2016 3:40:07 AM (7 years ago)
Author:
nanang
Message:

Re #1900: More merged from trunk (r5512 mistakenly contains merged changes in third-party dir only).

Location:
pjproject/branches/projects/uwp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/uwp

  • pjproject/branches/projects/uwp/pjnath/src/pjnath/stun_sock.c

    r4712 r5513  
    417417        pj_assert(stun_sock->q == NULL); 
    418418 
    419         opt = PJ_DNS_SRV_FALLBACK_A; 
    420         if (stun_sock->af == pj_AF_INET6()) { 
    421             opt |= (PJ_DNS_SRV_RESOLVE_AAAA | PJ_DNS_SRV_FALLBACK_AAAA); 
    422         } 
     419        /* Init DNS resolution option */ 
     420        if (stun_sock->af == pj_AF_INET6()) 
     421            opt = (PJ_DNS_SRV_RESOLVE_AAAA_ONLY | PJ_DNS_SRV_FALLBACK_AAAA); 
     422        else 
     423            opt = PJ_DNS_SRV_FALLBACK_A; 
    423424 
    424425        status = pj_dns_srv_resolve(domain, &res_name, default_port,  
     
    436437 
    437438            status = pj_getaddrinfo(stun_sock->af, domain, &cnt, &ai); 
    438             if (status != PJ_SUCCESS) 
     439            if (cnt == 0) 
     440                status = PJ_EAFNOTSUP; 
     441 
     442            if (status != PJ_SUCCESS) { 
     443                pj_grp_lock_release(stun_sock->grp_lock); 
    439444                return status; 
     445            } 
    440446 
    441447            pj_sockaddr_cp(&stun_sock->srv_addr, &ai.ai_addr); 
     
    573579    pj_assert(rec->count); 
    574580    pj_assert(rec->entry[0].server.addr_count); 
    575  
    576     PJ_TODO(SUPPORT_IPV6_IN_RESOLVER); 
    577     pj_assert(stun_sock->af == pj_AF_INET()); 
     581    pj_assert(rec->entry[0].server.addr[0].af == stun_sock->af); 
    578582 
    579583    /* Set the address */ 
    580     pj_sockaddr_in_init(&stun_sock->srv_addr.ipv4, NULL, 
    581                         rec->entry[0].port); 
    582     stun_sock->srv_addr.ipv4.sin_addr = rec->entry[0].server.addr[0]; 
     584    pj_sockaddr_init(stun_sock->af, &stun_sock->srv_addr, NULL, 
     585                     rec->entry[0].port); 
     586    if (stun_sock->af == pj_AF_INET6()) { 
     587        stun_sock->srv_addr.ipv6.sin6_addr =  
     588                                    rec->entry[0].server.addr[0].ip.v6; 
     589    } else { 
     590        stun_sock->srv_addr.ipv4.sin_addr =  
     591                                    rec->entry[0].server.addr[0].ip.v4; 
     592    } 
    583593 
    584594    /* Start sending Binding request */ 
Note: See TracChangeset for help on using the changeset viewer.