Changeset 1031 for pjproject/trunk/pjlib-util/src/pjlib-util/dns.c
- Timestamp:
- Mar 2, 2007 2:35:57 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjlib-util/src/pjlib-util/dns.c
r974 r1031 341 341 /* Parse some well known records */ 342 342 if (rr->type == PJ_DNS_TYPE_A) { 343 pj_in_addr ip_addr; 344 345 pj_memcpy(&ip_addr, p, 4); 346 pj_strdup2(pool, &rr->rdata.a.ip_addr, pj_inet_ntoa(ip_addr)); 347 343 pj_memcpy(&rr->rdata.a.ip_addr, p, 4); 348 344 p += 4; 349 345 … … 588 584 pool, &dst->rdata.srv.target); 589 585 } else if (src->type == PJ_DNS_TYPE_A) { 590 pj_strdup(pool, &dst->rdata.a.ip_addr, &src->rdata.a.ip_addr);586 dst->rdata.a.ip_addr.s_addr = src->rdata.a.ip_addr.s_addr; 591 587 } else if (src->type == PJ_DNS_TYPE_CNAME) { 592 588 pj_strdup(pool, &dst->rdata.cname.name, &src->rdata.cname.name); … … 603 599 PJ_DEF(void) pj_dns_packet_dup(pj_pool_t *pool, 604 600 const pj_dns_parsed_packet*p, 601 unsigned options, 605 602 pj_dns_parsed_packet **p_dst) 606 603 { … … 631 628 632 629 /* Copy query section */ 633 if (p->hdr.qdcount ) {630 if (p->hdr.qdcount && (options & PJ_DNS_NO_QD)==0) { 634 631 dst->q = pj_pool_alloc(pool, p->hdr.qdcount * 635 632 sizeof(pj_dns_parsed_query)); … … 642 639 643 640 /* Copy answer section */ 644 if (p->hdr.anscount ) {641 if (p->hdr.anscount && (options & PJ_DNS_NO_ANS)==0) { 645 642 dst->ans = pj_pool_alloc(pool, p->hdr.anscount * 646 643 sizeof(pj_dns_parsed_rr)); … … 653 650 654 651 /* Copy NS section */ 655 if (p->hdr.nscount ) {652 if (p->hdr.nscount && (options & PJ_DNS_NO_NS)==0) { 656 653 dst->ns = pj_pool_alloc(pool, p->hdr.nscount * 657 654 sizeof(pj_dns_parsed_rr)); … … 664 661 665 662 /* Copy additional info section */ 666 if (p->hdr.arcount ) {663 if (p->hdr.arcount && (options & PJ_DNS_NO_AR)==0) { 667 664 dst->arr = pj_pool_alloc(pool, p->hdr.arcount * 668 665 sizeof(pj_dns_parsed_rr));
Note: See TracChangeset
for help on using the changeset viewer.