anyone had a chance to test this? On 2022-02-24 18:38 +01, Florian Obser <[email protected]> wrote: > Upstream renamed parse_extract_edns to > parse_extract_edns_from_response_msg and parse_edns_from_pkt to > parse_edns_from_query_pkt in the upcomming libunbound 1.15.0 > update. Both funktions work equally well for us but it would look weird > to use the "from_response_msg" function on the query so switch to > parse_edns_from_pkt in preparation for the libunbound update. > > OK? > > diff --git frontend.c frontend.c > index 1b6333da22c..3a2ee87dea8 100644 > --- frontend.c > +++ frontend.c > @@ -734,6 +734,7 @@ void > handle_query(struct pending_query *pq) > { > struct query_imsg query_imsg; > + struct query_info skip; > struct bl_node find; > int rcode; > char *str; > @@ -773,7 +774,12 @@ handle_query(struct pending_query *pq) > goto send_answer; > } > > - rcode = parse_extract_edns(pq->qmsg, &pq->edns, pq->region); > + sldns_buffer_rewind(pq->qbuf); > + if (!query_info_parse(&skip, pq->qbuf)) { > + error_answer(pq, LDNS_RCODE_SERVFAIL); > + goto send_answer; > + } > + rcode = parse_edns_from_pkt(pq->qbuf, &pq->edns, pq->region); > if (rcode != LDNS_RCODE_NOERROR) { > error_answer(pq, rcode); > goto send_answer; > @@ -999,6 +1005,7 @@ void > resend_dns64_query(struct pending_query *opq) { > struct pending_query *pq; > struct query_imsg query_imsg; > + struct query_info skip; > int rcode; > char dname[LDNS_MAX_DOMAINLEN + 1]; > > @@ -1059,7 +1066,12 @@ resend_dns64_query(struct pending_query *opq) { > goto drop; > } > > - rcode = parse_extract_edns(pq->qmsg, &pq->edns, pq->region); > + sldns_buffer_rewind(pq->qbuf); > + if (!query_info_parse(&skip, pq->qbuf)) { > + error_answer(pq, LDNS_RCODE_SERVFAIL); > + goto send_answer; > + } > + rcode = parse_edns_from_pkt(pq->qbuf, &pq->edns, pq->region); > if (rcode != LDNS_RCODE_NOERROR) { > error_answer(pq, rcode); > goto send_answer; > > -- > > I'm not entirely sure you are real. >
-- I'm not entirely sure you are real.
