mirror of
https://github.com/NLnetLabs/unbound.git
synced 2025-12-20 23:00:56 -05:00
Apply suggestions from code review
Co-authored-by: Willem Toorop <willem@nlnetlabs.nl>
This commit is contained in:
parent
cb48d9e4a1
commit
fa73142b79
4 changed files with 13 additions and 17 deletions
|
|
@ -1003,9 +1003,6 @@ answer_notify(struct worker* w, struct query_info* qinfo,
|
|||
edns->udp_size = EDNS_ADVERTISED_SIZE;
|
||||
edns->ext_rcode = 0;
|
||||
edns->bits &= EDNS_DO;
|
||||
edns->opt_list_in = NULL;
|
||||
edns->opt_list_out = NULL;
|
||||
edns->opt_list_modules_out = NULL;
|
||||
error_encode(pkt, rcode, qinfo,
|
||||
*(uint16_t*)(void *)sldns_buffer_begin(pkt),
|
||||
sldns_buffer_read_u16_at(pkt, 2), edns);
|
||||
|
|
|
|||
|
|
@ -831,6 +831,10 @@ attach_edns_record_max_msg_sz(sldns_buffer* pkt, struct edns_data* edns,
|
|||
sldns_buffer_write_u16(pkt, 0); /* rdatalen */
|
||||
/* write rdata */
|
||||
for(opt=edns->opt_list_modules_out; opt; opt=opt->next) {
|
||||
if (opt->opt_code == LDNS_EDNS_PADDING) {
|
||||
padding_option = opt;
|
||||
continue;
|
||||
}
|
||||
sldns_buffer_write_u16(pkt, opt->opt_code);
|
||||
sldns_buffer_write_u16(pkt, opt->opt_len);
|
||||
if(opt->opt_len != 0)
|
||||
|
|
|
|||
|
|
@ -968,7 +968,6 @@ parse_edns_options(uint8_t* rdata_ptr, size_t rdata_len,
|
|||
log_err("out of memory");
|
||||
return LDNS_RCODE_SERVFAIL;
|
||||
}
|
||||
c->tcp_keepalive = 1;
|
||||
}
|
||||
|
||||
/* while still more options, and have code+len to read */
|
||||
|
|
@ -1031,17 +1030,17 @@ parse_edns_options(uint8_t* rdata_ptr, size_t rdata_len,
|
|||
break;
|
||||
|
||||
default:
|
||||
if(!edns_opt_list_append(&edns->opt_list_in,
|
||||
opt_code, opt_len, rdata_ptr, region)) {
|
||||
log_err("out of memory");
|
||||
return LDNS_RCODE_SERVFAIL;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if(!edns_opt_list_append(&edns->opt_list_in,
|
||||
opt_code, opt_len, rdata_ptr, region)) {
|
||||
log_err("out of memory");
|
||||
return LDNS_RCODE_SERVFAIL;
|
||||
}
|
||||
rdata_ptr += opt_len;
|
||||
rdata_len -= opt_len;
|
||||
}
|
||||
return 0;
|
||||
return LDNS_RCODE_NOERROR;
|
||||
}
|
||||
|
||||
int
|
||||
|
|
@ -1109,7 +1108,7 @@ parse_extract_edns(struct msg_parse* msg, struct edns_data* edns,
|
|||
rdata_len = found->rr_first->size-2;
|
||||
rdata_ptr = found->rr_first->ttl_data+6;
|
||||
if(parse_edns_options(rdata_ptr, rdata_len, edns, NULL, NULL, region))
|
||||
return 0;
|
||||
return LDNS_RCODE_NOERROR;
|
||||
|
||||
/* ignore rrsigs */
|
||||
|
||||
|
|
@ -1187,12 +1186,8 @@ parse_edns_from_pkt(sldns_buffer* pkt, struct edns_data* edns,
|
|||
if(sldns_buffer_remaining(pkt) < rdata_len)
|
||||
return LDNS_RCODE_FORMERR;
|
||||
rdata_ptr = sldns_buffer_current(pkt);
|
||||
rcode = parse_edns_options(rdata_ptr, rdata_len, edns, cfg, c, region);
|
||||
if(rcode)
|
||||
return rcode;
|
||||
|
||||
/* ignore rrsigs */
|
||||
|
||||
return parse_edns_options(rdata_ptr, rdata_len, edns, cfg, c, region);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -235,7 +235,7 @@ struct edns_data {
|
|||
struct edns_option* opt_list_out;
|
||||
/** rdata element list of outgoing edns options from modules
|
||||
* or NULL if none */
|
||||
struct edns_option* opt_list_modules_out;
|
||||
struct edns_option* opt_list_inplace_cb_out;
|
||||
/** block size to pad */
|
||||
uint16_t padding_block_size;
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue