Lines Matching refs:rrset

143 	struct rrsetinfo *rrset = NULL;  in lwres_getrrsetbyname()  local
184 rrset = sane_malloc(sizeof(struct rrsetinfo)); in lwres_getrrsetbyname()
185 if (rrset == NULL) { in lwres_getrrsetbyname()
189 rrset->rri_name = NULL; in lwres_getrrsetbyname()
190 rrset->rri_rdclass = response->rdclass; in lwres_getrrsetbyname()
191 rrset->rri_rdtype = response->rdtype; in lwres_getrrsetbyname()
192 rrset->rri_ttl = response->ttl; in lwres_getrrsetbyname()
193 rrset->rri_flags = 0; in lwres_getrrsetbyname()
194 rrset->rri_nrdatas = 0; in lwres_getrrsetbyname()
195 rrset->rri_rdatas = NULL; in lwres_getrrsetbyname()
196 rrset->rri_nsigs = 0; in lwres_getrrsetbyname()
197 rrset->rri_sigs = NULL; in lwres_getrrsetbyname()
199 rrset->rri_name = sane_malloc(response->realnamelen + 1); in lwres_getrrsetbyname()
200 if (rrset->rri_name == NULL) { in lwres_getrrsetbyname()
204 strncpy(rrset->rri_name, response->realname, response->realnamelen); in lwres_getrrsetbyname()
205 rrset->rri_name[response->realnamelen] = 0; in lwres_getrrsetbyname()
208 rrset->rri_flags |= RRSET_VALIDATED; in lwres_getrrsetbyname()
210 rrset->rri_nrdatas = response->nrdatas; in lwres_getrrsetbyname()
211 rrset->rri_rdatas = sane_calloc(rrset->rri_nrdatas, in lwres_getrrsetbyname()
213 if (rrset->rri_rdatas == NULL) { in lwres_getrrsetbyname()
217 for (i = 0; i < rrset->rri_nrdatas; i++) { in lwres_getrrsetbyname()
218 rrset->rri_rdatas[i].rdi_length = response->rdatalen[i]; in lwres_getrrsetbyname()
219 rrset->rri_rdatas[i].rdi_data = in lwres_getrrsetbyname()
220 sane_malloc(rrset->rri_rdatas[i].rdi_length); in lwres_getrrsetbyname()
221 if (rrset->rri_rdatas[i].rdi_data == NULL) { in lwres_getrrsetbyname()
225 memmove(rrset->rri_rdatas[i].rdi_data, response->rdatas[i], in lwres_getrrsetbyname()
226 rrset->rri_rdatas[i].rdi_length); in lwres_getrrsetbyname()
228 rrset->rri_nsigs = response->nsigs; in lwres_getrrsetbyname()
229 rrset->rri_sigs = sane_calloc(rrset->rri_nsigs, in lwres_getrrsetbyname()
231 if (rrset->rri_sigs == NULL) { in lwres_getrrsetbyname()
235 for (i = 0; i < rrset->rri_nsigs; i++) { in lwres_getrrsetbyname()
236 rrset->rri_sigs[i].rdi_length = response->siglen[i]; in lwres_getrrsetbyname()
237 rrset->rri_sigs[i].rdi_data = in lwres_getrrsetbyname()
238 sane_malloc(rrset->rri_sigs[i].rdi_length); in lwres_getrrsetbyname()
239 if (rrset->rri_sigs[i].rdi_data == NULL) { in lwres_getrrsetbyname()
243 memmove(rrset->rri_sigs[i].rdi_data, response->sigs[i], in lwres_getrrsetbyname()
244 rrset->rri_sigs[i].rdi_length); in lwres_getrrsetbyname()
250 *res = rrset; in lwres_getrrsetbyname()
253 if (rrset != NULL) in lwres_getrrsetbyname()
254 lwres_freerrset(rrset); in lwres_getrrsetbyname()
266 lwres_freerrset(struct rrsetinfo *rrset) { in lwres_freerrset() argument
268 if (rrset->rri_rdatas != NULL) { in lwres_freerrset()
269 for (i = 0; i < rrset->rri_nrdatas; i++) { in lwres_freerrset()
270 if (rrset->rri_rdatas[i].rdi_data == NULL) in lwres_freerrset()
272 free(rrset->rri_rdatas[i].rdi_data); in lwres_freerrset()
274 free(rrset->rri_rdatas); in lwres_freerrset()
276 if (rrset->rri_sigs != NULL) { in lwres_freerrset()
277 for (i = 0; i < rrset->rri_nsigs; i++) { in lwres_freerrset()
278 if (rrset->rri_sigs[i].rdi_data == NULL) in lwres_freerrset()
280 free(rrset->rri_sigs[i].rdi_data); in lwres_freerrset()
282 free(rrset->rri_sigs); in lwres_freerrset()
284 free(rrset->rri_name); in lwres_freerrset()
285 free(rrset); in lwres_freerrset()