Lines Matching refs:answer
173 struct dns_rr *answer; member
203 u_char answer[ANSWER_BUFFER_SIZE]; in getrrsetbyname() local
241 answer, sizeof(answer)); in getrrsetbyname()
257 response = parse_dns_response(answer, length); in getrrsetbyname()
276 rrset->rri_ttl = response->answer->ttl; in getrrsetbyname()
286 rrset->rri_name = strdup(response->answer->name); in getrrsetbyname()
293 rrset->rri_nrdatas = count_dns_rr(response->answer, rrset->rri_rdclass, in getrrsetbyname()
295 rrset->rri_nsigs = count_dns_rr(response->answer, rrset->rri_rdclass, in getrrsetbyname()
316 for (rr = response->answer, index_ans = 0, index_sig = 0; in getrrsetbyname()
389 parse_dns_response(const u_char *answer, int size) in parse_dns_response() argument
403 cp = answer; in parse_dns_response()
422 resp->query = parse_dns_qsection(answer, size, &cp, in parse_dns_response()
430 resp->answer = parse_dns_rrsection(answer, size, &cp, in parse_dns_response()
432 if (resp->header.ancount && resp->answer == NULL) { in parse_dns_response()
438 resp->authority = parse_dns_rrsection(answer, size, &cp, in parse_dns_response()
446 resp->additional = parse_dns_rrsection(answer, size, &cp, in parse_dns_response()
457 parse_dns_qsection(const u_char *answer, int size, const u_char **cp, int count) in parse_dns_qsection() argument
465 if (*cp + need > answer + size) \ in parse_dns_qsection()
470 if (*cp >= answer + size) { in parse_dns_qsection()
485 length = dn_expand(answer, answer + size, *cp, name, in parse_dns_qsection()
515 parse_dns_rrsection(const u_char *answer, int size, const u_char **cp, in parse_dns_rrsection() argument
524 if (*cp + need > answer + size) \ in parse_dns_rrsection()
529 if (*cp >= answer + size) { in parse_dns_rrsection()
545 length = dn_expand(answer, answer + size, *cp, name, in parse_dns_rrsection()
628 free_dns_rr(p->answer); in free_dns_response()