extra/bind to 9.13.5-2

This commit is contained in:
Kevin Mihelich 2019-01-07 19:21:17 +00:00
parent cc2b2b334a
commit da116c894d
2 changed files with 50 additions and 3 deletions

View file

@ -0,0 +1,45 @@
From 0e5dd25fc5c70d656666f6d537e93cf346e7f419 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Witold=20Kr=C4=99cicki?= <wpk@isc.org>
Date: Thu, 3 Jan 2019 13:06:39 +0100
Subject: [PATCH] When a forwarder fails and we're not in a forward-only mode
we go back to regular resolution. When this happens the fetch timer is
already running, and we might end up in a situation where we we create a
fetch for qname-minimized query and after that the timer is triggered and the
query is retried (fctx_try) - which causes relaunching of qname-minimization
fetch - and since we already have a qmin fetch for this fctx - assertion
failure.
diff --git a/lib/dns/resolver.c b/lib/dns/resolver.c
index 8beecbcb07..ea122bd30c 100644
--- a/lib/dns/resolver.c
+++ b/lib/dns/resolver.c
@@ -4012,6 +4012,7 @@ fctx_try(fetchctx_t *fctx, bool retrying, bool badcache) {
options &= ~DNS_FETCHOPT_QMINIMIZE;
fctx_increference(fctx);
task = res->buckets[bucketnum].task;
+ fctx_stoptimer(fctx);
result = dns_resolver_createfetch(fctx->res, &fctx->qminname,
fctx->qmintype, &fctx->domain,
&fctx->nameservers, NULL, NULL, 0,
@@ -4343,13 +4344,12 @@ fctx_timeout(isc_task_t *task, isc_event_t *event) {
* timer.
*/
result = fctx_starttimer(fctx);
- if (result != ISC_R_SUCCESS)
+ if (result != ISC_R_SUCCESS) {
fctx_done(fctx, result, __LINE__);
- else
- /*
- * Keep trying.
- */
+ } else {
+ /* Keep trying */
fctx_try(fctx, true, false);
+ }
}
isc_event_free(&event);
--
2.18.1

View file

@ -13,7 +13,7 @@ pkgbase=bind
pkgname=(bind bind-tools) pkgname=(bind bind-tools)
_pkgver=9.13.5 _pkgver=9.13.5
pkgver=${_pkgver//-/.} pkgver=${_pkgver//-/.}
pkgrel=1 pkgrel=2
url='https://www.isc.org/software/bind/' url='https://www.isc.org/software/bind/'
license=('MPL2') license=('MPL2')
arch=('x86_64') arch=('x86_64')
@ -33,7 +33,8 @@ source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz"{,.asc}
'localhost.zone' 'localhost.zone'
'localhost.ip6.zone' 'localhost.ip6.zone'
'127.0.0.zone' '127.0.0.zone'
'empty.zone') 'empty.zone'
'01-fs60913.patch')
sha1sums=('8c01018e6928e9117cd8e0cdd464efe3b68894c5' sha1sums=('8c01018e6928e9117cd8e0cdd464efe3b68894c5'
'SKIP' 'SKIP'
'c5a2bcd9b0f009ae71f3a03fbdbe012196962a11' 'c5a2bcd9b0f009ae71f3a03fbdbe012196962a11'
@ -43,7 +44,8 @@ sha1sums=('8c01018e6928e9117cd8e0cdd464efe3b68894c5'
'6704303a6ed431a29b1d8fe7b12decd4d1f2f50f' '6704303a6ed431a29b1d8fe7b12decd4d1f2f50f'
'52da8f1c0247a11b16daa4e03d920e8f09315cbe' '52da8f1c0247a11b16daa4e03d920e8f09315cbe'
'9c33726088342207ad06d33b2c13408290a0c8ad' '9c33726088342207ad06d33b2c13408290a0c8ad'
'4f4457b310cbbeadca2272eced062a9c2b2b42fe') '4f4457b310cbbeadca2272eced062a9c2b2b42fe'
'a71c39b6073be96589e3c0a8cc7430f0e22ebe9c')
prepare() { prepare() {
msg2 'Getting a fresh version of root DNS' msg2 'Getting a fresh version of root DNS'