Lines Matching defs:rrset

27  *    rrset. The resource records contained in #rri_rdatas and #rri_sigs are
37 * lwres_freerrset(). rrset is a pointer to a struct rrset created by a
140 struct rrsetinfo *rrset = NULL;
181 rrset = sane_malloc(sizeof(struct rrsetinfo));
182 if (rrset == NULL) {
186 rrset->rri_name = NULL;
187 rrset->rri_rdclass = response->rdclass;
188 rrset->rri_rdtype = response->rdtype;
189 rrset->rri_ttl = response->ttl;
190 rrset->rri_flags = 0;
191 rrset->rri_nrdatas = 0;
192 rrset->rri_rdatas = NULL;
193 rrset->rri_nsigs = 0;
194 rrset->rri_sigs = NULL;
196 rrset->rri_name = sane_malloc(response->realnamelen + 1);
197 if (rrset->rri_name == NULL) {
201 strncpy(rrset->rri_name, response->realname, response->realnamelen);
202 rrset->rri_name[response->realnamelen] = 0;
205 rrset->rri_flags |= RRSET_VALIDATED;
207 rrset->rri_nrdatas = response->nrdatas;
208 rrset->rri_rdatas = sane_calloc(rrset->rri_nrdatas,
210 if (rrset->rri_rdatas == NULL) {
214 for (i = 0; i < rrset->rri_nrdatas; i++) {
215 rrset->rri_rdatas[i].rdi_length = response->rdatalen[i];
216 rrset->rri_rdatas[i].rdi_data =
217 sane_malloc(rrset->rri_rdatas[i].rdi_length);
218 if (rrset->rri_rdatas[i].rdi_data == NULL) {
222 memmove(rrset->rri_rdatas[i].rdi_data, response->rdatas[i],
223 rrset->rri_rdatas[i].rdi_length);
225 rrset->rri_nsigs = response->nsigs;
226 rrset->rri_sigs = sane_calloc(rrset->rri_nsigs,
228 if (rrset->rri_sigs == NULL) {
232 for (i = 0; i < rrset->rri_nsigs; i++) {
233 rrset->rri_sigs[i].rdi_length = response->siglen[i];
234 rrset->rri_sigs[i].rdi_data =
235 sane_malloc(rrset->rri_sigs[i].rdi_length);
236 if (rrset->rri_sigs[i].rdi_data == NULL) {
240 memmove(rrset->rri_sigs[i].rdi_data, response->sigs[i],
241 rrset->rri_sigs[i].rdi_length);
247 *res = rrset;
250 if (rrset != NULL)
251 lwres_freerrset(rrset);
263 lwres_freerrset(struct rrsetinfo *rrset) {
265 if (rrset->rri_rdatas != NULL) {
266 for (i = 0; i < rrset->rri_nrdatas; i++) {
267 if (rrset->rri_rdatas[i].rdi_data == NULL)
269 free(rrset->rri_rdatas[i].rdi_data);
271 free(rrset->rri_rdatas);
273 if (rrset->rri_sigs != NULL) {
274 for (i = 0; i < rrset->rri_nsigs; i++) {
275 if (rrset->rri_sigs[i].rdi_data == NULL)
277 free(rrset->rri_sigs[i].rdi_data);
279 free(rrset->rri_sigs);
281 free(rrset->rri_name);
282 free(rrset);