Lines Matching full:region

80 	struct query_info* qinf, struct regional* region)
83 if(region)
84 qinf->qname = (uint8_t*)regional_alloc(region,
99 construct_reply_info_base(struct regional* region, uint16_t flags, size_t qd,
109 if(region)
110 rep = (struct reply_info*)regional_alloc(region, s);
131 if(region)
136 if(!region)
144 struct regional* region)
146 *rep = construct_reply_info_base(region, msg->flags, msg->qdcount, 0,
156 struct regional* region)
160 if(region) {
162 regional_alloc(region,
205 make_new_reply_info(const struct reply_info* rep, struct regional* region,
216 new_rep = construct_reply_info_base(region, rep->flags,
223 if(!reply_info_alloc_rrset_keys(new_rep, NULL, region))
387 struct packed_rrset_data** data, struct regional* region)
398 if(region)
399 *data = regional_alloc_zero(region, s);
405 if(!region) {
454 struct rrset_parse *pset, struct regional* region,
460 if(region)
462 region, pset->dname_len);
473 if(!parse_create_rrset(pkt, pset, &data, region)) {
474 if(!region) {
492 * @param region: if not NULL, used for allocation.
497 struct reply_info* rep, struct regional* region)
509 if(!parse_copy_decompress_rrset(pkt, msg, pset, region,
528 struct reply_info** rep, struct regional* region)
531 if(!parse_create_qinfo(pkt, msg, qinf, region))
533 if(!parse_create_repinfo(msg, rep, region))
535 if(!reply_info_alloc_rrset_keys(*rep, alloc, region)) {
536 if(!region) reply_info_parsedelete(*rep, alloc);
539 if(!parse_copy_decompress(pkt, msg, *rep, region)) {
540 if(!region) reply_info_parsedelete(*rep, alloc);
548 struct regional* region, struct edns_data* edns)
550 /* use scratch pad region-allocator during parsing. */
557 if(!(msg = regional_alloc(region, sizeof(*msg)))) {
563 if((ret = parse_packet(pkt, msg, region)) != 0) {
566 if((ret = parse_extract_edns_from_response_msg(msg, edns, region)) != 0)
762 struct regional* region)
773 if(region) {
775 dk->rk.dname = (uint8_t*)regional_alloc_init(region,
783 if(region)
785 region, fd, s);
797 struct regional* region)
800 cp = construct_reply_info_base(region, rep->flags, rep->qdcount,
809 if(region) {
810 cp->reason_bogus_str = (char*)regional_alloc(region,
818 if(!region)
827 if(!reply_info_alloc_rrset_keys(cp, alloc, region)) {
828 if(!region)
832 if(!repinfo_copy_rrsets(cp, rep, region)) {
833 if(!region)
940 struct regional* region = regional_create();
941 if(!(buf && region)) {
944 regional_destroy(region);
948 region, 65535, 1, 0)) {
961 regional_destroy(region);
1088 parse_reply_in_temp_region(sldns_buffer* pkt, struct regional* region,
1093 if(!(msg = regional_alloc(region, sizeof(*msg)))) {
1098 if(parse_packet(pkt, msg, region) != 0){
1101 if(!parse_create_msg(pkt, msg, NULL, qi, &rep, region)) {
1107 int edns_opt_list_append_ede(struct edns_option** list, struct regional* region,
1115 opt = (struct edns_option*)regional_alloc(region, sizeof(*opt));
1121 opt->opt_data = regional_alloc(region, txt_len + sizeof(uint16_t));
1138 struct regional* region)
1144 data, region);
1148 uint8_t* data, struct regional* region)
1154 opt = (struct edns_option*)regional_alloc(region, sizeof(*opt));
1162 opt->opt_data = regional_alloc_init(region, data, len);
1178 /* The list should already be allocated in a region. Freeing the
1179 * allocated space in a region is not possible. We just unlink the
1180 * required elements and they will be freed together with the region. */
1211 struct comm_reply* repinfo, struct regional* region,
1225 rcode, edns, &opt_list_out, repinfo, region, start_time, cb->id, cb->cb_arg);
1233 struct edns_data* edns, struct comm_reply* repinfo, struct regional* region,
1238 qstate, rep, rcode, edns, repinfo, region, start_time);
1244 struct comm_reply* repinfo, struct regional* region,
1249 qinfo, qstate, rep, rcode, edns, repinfo, region, start_time);
1255 struct comm_reply* repinfo, struct regional* region,
1260 qinfo, qstate, rep, rcode, edns, repinfo, region, start_time);
1266 struct comm_reply* repinfo, struct regional* region,
1275 region, start_time);
1281 struct regional* region)
1288 qstate, addr, addrlen, zone, zonelen, region,
1322 struct regional* region)
1327 s = regional_alloc_init(region, list, sizeof(*list));
1333 s->opt_data = regional_alloc_init(region, s->opt_data,
1352 uint16_t* filter_list, size_t filter_list_len, struct regional* region)
1362 s = regional_alloc_init(region, list, sizeof(*list));
1368 s->opt_data = regional_alloc_init(region, s->opt_data,