mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-01 06:55:30 +00:00
fixup! Use experimental "_ A" minimization in relaxed mode.
This commit is contained in:
@@ -10498,30 +10498,27 @@ fctx_minimize_qname(fetchctx_t *fctx) {
|
|||||||
* We want to query for qmin_labels from fctx->name
|
* We want to query for qmin_labels from fctx->name
|
||||||
*/
|
*/
|
||||||
dns_fixedname_t fname;
|
dns_fixedname_t fname;
|
||||||
dns_fixedname_init(&fname);
|
dns_name_t *name = dns_fixedname_initname(&fname);
|
||||||
dns_name_split(&fctx->name,
|
dns_name_split(&fctx->name, fctx->qmin_labels,
|
||||||
fctx->qmin_labels,
|
|
||||||
NULL, dns_fixedname_name(&fname));
|
NULL, dns_fixedname_name(&fname));
|
||||||
if ((fctx->options & DNS_FETCHOPT_QMIN_USE_A) != 0) {
|
if ((fctx->options & DNS_FETCHOPT_QMIN_USE_A) != 0) {
|
||||||
isc_buffer_t dbuf;
|
isc_buffer_t dbuf;
|
||||||
dns_fixedname_t tmpname;
|
dns_fixedname_t tmpname;
|
||||||
|
dns_name_t *tname = dns_fixedname_initname(&tmpname);
|
||||||
char ndata[DNS_NAME_MAXWIRE];
|
char ndata[DNS_NAME_MAXWIRE];
|
||||||
|
|
||||||
isc_buffer_init(&dbuf, ndata, DNS_NAME_MAXWIRE);
|
isc_buffer_init(&dbuf, ndata, DNS_NAME_MAXWIRE);
|
||||||
dns_fixedname_init(&tmpname);
|
dns_fixedname_init(&tmpname);
|
||||||
result = dns_name_concatenate(&underscore_name,
|
result = dns_name_concatenate(&underscore_name,
|
||||||
dns_fixedname_name(&fname),
|
name, tname, &dbuf);
|
||||||
dns_fixedname_name(&tmpname),
|
|
||||||
&dbuf);
|
|
||||||
if (result == ISC_R_SUCCESS) {
|
if (result == ISC_R_SUCCESS) {
|
||||||
result = dns_name_dup(dns_fixedname_name(&tmpname),
|
result = dns_name_dup(tname, fctx->mctx,
|
||||||
fctx->mctx,
|
|
||||||
&fctx->qminname);
|
&fctx->qminname);
|
||||||
}
|
}
|
||||||
fctx->qmintype = dns_rdatatype_a;
|
fctx->qmintype = dns_rdatatype_a;
|
||||||
} else {
|
} else {
|
||||||
result = dns_name_dup(dns_fixedname_name(&fname),
|
result = dns_name_dup(dns_fixedname_name(&fname),
|
||||||
fctx->mctx,
|
fctx->mctx, &fctx->qminname);
|
||||||
&fctx->qminname);
|
|
||||||
fctx->qmintype = dns_rdatatype_ns;
|
fctx->qmintype = dns_rdatatype_ns;
|
||||||
}
|
}
|
||||||
fctx->minimized = true;
|
fctx->minimized = true;
|
||||||
|
Reference in New Issue
Block a user