[arch-commits] Commit in bind/repos (12 files)

Evangelos Foutras foutrelis at archlinux.org
Sun Feb 10 03:01:11 UTC 2019


    Date: Sunday, February 10, 2019 @ 03:01:09
  Author: foutrelis
Revision: 345822

archrelease: copy trunk to staging-x86_64

Added:
  bind/repos/staging-x86_64/
  bind/repos/staging-x86_64/01-fs60913.patch
    (from rev 345821, bind/trunk/01-fs60913.patch)
  bind/repos/staging-x86_64/127.0.0.zone
    (from rev 345821, bind/trunk/127.0.0.zone)
  bind/repos/staging-x86_64/PKGBUILD
    (from rev 345821, bind/trunk/PKGBUILD)
  bind/repos/staging-x86_64/empty.zone
    (from rev 345821, bind/trunk/empty.zone)
  bind/repos/staging-x86_64/fix-FS#60286.patch
    (from rev 345821, bind/trunk/fix-FS#60286.patch)
  bind/repos/staging-x86_64/localhost.ip6.zone
    (from rev 345821, bind/trunk/localhost.ip6.zone)
  bind/repos/staging-x86_64/localhost.zone
    (from rev 345821, bind/trunk/localhost.zone)
  bind/repos/staging-x86_64/named.conf
    (from rev 345821, bind/trunk/named.conf)
  bind/repos/staging-x86_64/named.service
    (from rev 345821, bind/trunk/named.service)
  bind/repos/staging-x86_64/sysusers.conf
    (from rev 345821, bind/trunk/sysusers.conf)
  bind/repos/staging-x86_64/tmpfiles.conf
    (from rev 345821, bind/trunk/tmpfiles.conf)

--------------------+
 01-fs60913.patch   |   45 +++++++++++++++++
 127.0.0.zone       |   10 +++
 PKGBUILD           |  134 +++++++++++++++++++++++++++++++++++++++++++++++++++
 empty.zone         |    8 +++
 fix-FS#60286.patch |  129 +++++++++++++++++++++++++++++++++++++++++++++++++
 localhost.ip6.zone |   10 +++
 localhost.zone     |   11 ++++
 named.conf         |   72 +++++++++++++++++++++++++++
 named.service      |   10 +++
 sysusers.conf      |    1 
 tmpfiles.conf      |    1 
 11 files changed, 431 insertions(+)

Copied: bind/repos/staging-x86_64/01-fs60913.patch (from rev 345821, bind/trunk/01-fs60913.patch)
===================================================================
--- staging-x86_64/01-fs60913.patch	                        (rev 0)
+++ staging-x86_64/01-fs60913.patch	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,45 @@
+From 0e5dd25fc5c70d656666f6d537e93cf346e7f419 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Witold=20Kr=C4=99cicki?= <wpk at 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
+

Copied: bind/repos/staging-x86_64/127.0.0.zone (from rev 345821, bind/trunk/127.0.0.zone)
===================================================================
--- staging-x86_64/127.0.0.zone	                        (rev 0)
+++ staging-x86_64/127.0.0.zone	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,10 @@
+@                               1D IN SOA   localhost. root.localhost. (
+                                    42    ; serial (yyyymmdd##)
+                                    3H    ; refresh
+                                    15M   ; retry
+                                    1W    ; expiry
+                                    1D )  ; minimum ttl
+
+                                1D  IN  NS      localhost.
+
+1.0.0.127.in-addr.arpa.         1D  IN  PTR     localhost.

Copied: bind/repos/staging-x86_64/PKGBUILD (from rev 345821, bind/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD	                        (rev 0)
+++ staging-x86_64/PKGBUILD	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,134 @@
+# Maintainer: Sébastien Luttringer
+# Contributor: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: judd <jvinet at zeroflux.org>
+# Contributor: Mario Vazquez <mario_vazq at hotmail.com>
+
+pkgbase=bind
+pkgname=(bind bind-tools)
+_pkgver=9.13.5
+pkgver=${_pkgver//-/.}
+pkgrel=5
+url='https://www.isc.org/software/bind/'
+license=('MPL2')
+arch=('x86_64')
+options=('!emptydirs')
+makedepends=('libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'openssl' 'readline'
+  'libidn2' 'geoip' 'dnssec-anchors' 'python' 'json-c' 'python-ply' 'lmdb'
+  'zlib' 'icu' 'xz')
+validpgpkeys=('2B48A38AE1CF9886435F89EE45AC7857189CDBC5'
+              'ADBE9446286C794905F1E0756FA6EBC9911A4C02' #ISC, Inc)
+              'BE0E9748B718253A28BB89FFF1B11BF05CF02E57' #Internet Systems Consortium, Inc.
+              )
+source=("https://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz"{,.asc}
+        'tmpfiles.conf'
+        'sysusers.conf'
+        'named.conf'
+        'named.service'
+        'localhost.zone'
+        'localhost.ip6.zone'
+        '127.0.0.zone'
+        'empty.zone'
+        '01-fs60913.patch')
+sha1sums=('8c01018e6928e9117cd8e0cdd464efe3b68894c5'
+          'SKIP'
+          'c5a2bcd9b0f009ae71f3a03fbdbe012196962a11'
+          '9537f4835a1f736788d0733c7996a10db2d4eee4'
+          'c017aae379c32c7cb1aa1ad84776b83e3a5c139f'
+          '62b06487323dd0d515a4dc659b8ecd193c29107b'
+          '6704303a6ed431a29b1d8fe7b12decd4d1f2f50f'
+          '52da8f1c0247a11b16daa4e03d920e8f09315cbe'
+          '9c33726088342207ad06d33b2c13408290a0c8ad'
+          '4f4457b310cbbeadca2272eced062a9c2b2b42fe'
+          'a71c39b6073be96589e3c0a8cc7430f0e22ebe9c')
+
+prepare() {
+  msg2 'Getting a fresh version of root DNS'
+  # no more using source array, lack of versioning.
+  curl -o root.hint https://www.internic.net/zones/named.root
+  [[ -s root.hint ]]
+  cd bind-$_pkgver
+  # apply patch from the source array (should be a pacman feature)
+  local filename
+  for filename in "${source[@]}"; do
+    if [[ "$filename" =~ \.patch$ ]]; then
+      msg2 "Applying patch ${filename##*/}"
+      patch -p1 -N -i "$srcdir/${filename##*/}"
+    fi
+  done
+}
+
+build() {
+  cd bind-$_pkgver
+  export CFLAGS+=' -DDIG_SIGCHASE'
+  ./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --sbindir=/usr/bin \
+    --localstatedir=/var \
+    --disable-static \
+    --enable-fixed-rrset \
+    --enable-full-report \
+    --enable-dnsrps \
+    --with-python=/usr/bin/python \
+    --with-geoip \
+    --with-openssl \
+    --with-libidn2 \
+    --with-libjson \
+    --with-libxml2 \
+    --with-lmdb \
+    --with-libtool
+  make
+}
+
+package_bind() {
+  pkgdesc='The ISC DNS Server'
+  provides=('dns-server')
+  depends=('glibc' 'libxml2' 'libcap' 'openssl' 'geoip' 'json-c' 'bind-tools'
+           'zlib' 'lmdb')
+  backup=('etc/named.conf'
+          'var/named/127.0.0.zone'
+          'var/named/localhost.zone'
+          'var/named/localhost.ip6.zone'
+          'var/named/empty.zone')
+
+  cd "bind-$_pkgver"
+  install -dm755 "$pkgdir/usr/share/licenses/$pkgname/"
+  install -Dm644 LICENSE COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/"
+  for _d in bin/{check,named,rndc}; do
+    (cd "$_d" && make DESTDIR="$pkgdir" install)
+  done
+
+  cd "$srcdir"
+  install -D -m644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
+  install -D -m644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+
+  install -D -m644 named.service "$pkgdir/usr/lib/systemd/system/named.service"
+  install -D -m640 -o 0 -g 40 named.conf "$pkgdir/etc/named.conf"
+
+  install -d -m770 -o 0 -g 40 "$pkgdir/var/named"
+  install    -m640 -o 0 -g 40 root.hint "$pkgdir/var/named"
+  install    -m640 -o 0 -g 40 localhost.zone "$pkgdir/var/named"
+  install    -m640 -o 0 -g 40 localhost.ip6.zone "$pkgdir/var/named"
+  install    -m640 -o 0 -g 40 127.0.0.zone "$pkgdir/var/named"
+  install    -m640 -o 0 -g 40 empty.zone "$pkgdir/var/named"
+}
+
+package_bind-tools() {
+  pkgdesc='The ISC DNS tools'
+  depends=('glibc' 'libcap' 'libxml2' 'zlib' 'krb5' 'e2fsprogs' 'python' 'bash'
+           'openssl' 'readline' 'geoip' 'libidn2' 'dnssec-anchors' 'json-c'
+           'lmdb' 'xz' 'icu')
+  conflicts=('dnsutils')
+  replaces=('dnsutils' 'host')
+  provides=("dnsutils=$pkgver")
+
+  cd "bind-$_pkgver"
+  install -Dm644 COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+  make DESTDIR="$pkgdir" SUBDIRS="" install
+  (cd lib && make DESTDIR="$pkgdir" install)
+  for _d in bin/{confgen,dig,dnssec,delv,nsupdate,python,tools}; do
+    (cd "$_d" && make DESTDIR="$pkgdir" install)
+  done
+}
+
+# vim:set ts=2 sw=2 et:

Copied: bind/repos/staging-x86_64/empty.zone (from rev 345821, bind/trunk/empty.zone)
===================================================================
--- staging-x86_64/empty.zone	                        (rev 0)
+++ staging-x86_64/empty.zone	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,8 @@
+@                               1D IN SOA   localhost. root.localhost. (
+                                    42     ; serial (yyyymmdd##)
+                                    3H     ; refresh
+                                    15M    ; retry
+                                    1W     ; expiry
+                                    1D )   ; minimum ttl
+
+                                1D  IN  NS  localhost.

Copied: bind/repos/staging-x86_64/fix-FS#60286.patch (from rev 345821, bind/trunk/fix-FS#60286.patch)
===================================================================
--- staging-x86_64/fix-FS#60286.patch	                        (rev 0)
+++ staging-x86_64/fix-FS#60286.patch	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,129 @@
+diff --git a/lib/irs/getaddrinfo.c b/lib/irs/getaddrinfo.c
+index 1b2df6d71c9a3df0e75c1f336833a136e0d6a06c..d5481c7afa605880b7c9e5ca17815d5f80e6ea5a 100644
+--- a/lib/irs/getaddrinfo.c
++++ b/lib/irs/getaddrinfo.c
+@@ -181,6 +181,47 @@ static void _freeaddrinfo(struct addrinfo *ai);
+ #define FOUND_IPV6	0x2
+ #define FOUND_MAX	2
+ 
++/*%
++ * Try converting the scope identifier in 'src' to a network interface index.
++ * Upon success, return true and store the resulting index in 'dst'.  Upon
++ * failure, return false.
++ */
++static bool
++parse_scopeid(const char *src, uint32_t *dst) {
++	uint32_t scopeid = 0;
++
++	REQUIRE(src != NULL);
++	REQUIRE(dst != NULL);
++
++#ifdef HAVE_IF_NAMETOINDEX
++	/*
++	 * Try using if_nametoindex() first if it is available.  As it does not
++	 * handle numeric scopes, we do not simply return if it fails.
++	 */
++	scopeid = (uint32_t)if_nametoindex(src);
++#endif
++
++	/*
++	 * Fall back to numeric scope processing if if_nametoindex() either
++	 * fails or is unavailable.
++	 */
++	if (scopeid == 0) {
++		char *endptr = NULL;
++		scopeid = (uint32_t)strtoul(src, &endptr, 10);
++		/*
++		 * The scope identifier must not be empty and no trailing
++		 * characters are allowed after it.
++		 */
++		if (src == endptr || endptr == NULL || *endptr != '\0') {
++			return (false);
++		}
++	}
++
++	*dst = scopeid;
++
++	return (true);
++}
++
+ #define ISC_AI_MASK (AI_PASSIVE|AI_CANONNAME|AI_NUMERICHOST)
+ /*%
+  * Get a list of IP addresses and port numbers for host hostname and
+@@ -365,39 +406,24 @@ getaddrinfo(const char *hostname, const char *servname,
+ 		char abuf[sizeof(struct in6_addr)];
+ 		char nbuf[NI_MAXHOST];
+ 		int addrsize, addroff;
+-#ifdef IRS_HAVE_SIN6_SCOPE_ID
+-		char *p, *ep;
+ 		char ntmp[NI_MAXHOST];
+-		uint32_t scopeid;
+-#endif
++		uint32_t scopeid = 0;
+ 
+-#ifdef IRS_HAVE_SIN6_SCOPE_ID
+ 		/*
+ 		 * Scope identifier portion.
+ 		 */
+ 		ntmp[0] = '\0';
+ 		if (strchr(hostname, '%') != NULL) {
++			char *p;
+ 			strlcpy(ntmp, hostname, sizeof(ntmp));
+ 			p = strchr(ntmp, '%');
+-			ep = NULL;
+-
+-			/*
+-			 * Vendors may want to support non-numeric
+-			 * scopeid around here.
+-			 */
+ 
+-			if (p != NULL)
+-				scopeid = (uint32_t)strtoul(p + 1,
+-								&ep, 10);
+-			if (p != NULL && ep != NULL && ep[0] == '\0')
++			if (p != NULL && parse_scopeid(p + 1, &scopeid)) {
+ 				*p = '\0';
+-			else {
++			} else {
+ 				ntmp[0] = '\0';
+-				scopeid = 0;
+ 			}
+-		} else
+-			scopeid = 0;
+-#endif
++		}
+ 
+ 		if (inet_pton(AF_INET, hostname, (struct in_addr *)abuf)
+ 		    == 1) {
+@@ -415,7 +441,6 @@ getaddrinfo(const char *hostname, const char *servname,
+ 			addroff = offsetof(struct sockaddr_in, sin_addr);
+ 			family = AF_INET;
+ 			goto common;
+-#ifdef IRS_HAVE_SIN6_SCOPE_ID
+ 		} else if (ntmp[0] != '\0' &&
+ 			   inet_pton(AF_INET6, ntmp, abuf) == 1) {
+ 			if (family && family != AF_INET6)
+@@ -424,7 +449,6 @@ getaddrinfo(const char *hostname, const char *servname,
+ 			addroff = offsetof(struct sockaddr_in6, sin6_addr);
+ 			family = AF_INET6;
+ 			goto common;
+-#endif
+ 		} else if (inet_pton(AF_INET6, hostname, abuf) == 1) {
+ 			if (family != 0 && family != AF_INET6)
+ 				return (EAI_NONAME);
+@@ -444,12 +468,10 @@ getaddrinfo(const char *hostname, const char *servname,
+ 			ai->ai_socktype = socktype;
+ 			SIN(ai->ai_addr)->sin_port = port;
+ 			memmove((char *)ai->ai_addr + addroff, abuf, addrsize);
++			if (ai->ai_family == AF_INET6) {
++				SIN6(ai->ai_addr)->sin6_scope_id = scopeid;
++			}
+ 			if ((flags & AI_CANONNAME) != 0) {
+-#ifdef IRS_HAVE_SIN6_SCOPE_ID
+-				if (ai->ai_family == AF_INET6)
+-					SIN6(ai->ai_addr)->sin6_scope_id =
+-						scopeid;
+-#endif
+ 				if (getnameinfo(ai->ai_addr,
+ 						(socklen_t)ai->ai_addrlen,
+ 						nbuf, sizeof(nbuf), NULL, 0,

Copied: bind/repos/staging-x86_64/localhost.ip6.zone (from rev 345821, bind/trunk/localhost.ip6.zone)
===================================================================
--- staging-x86_64/localhost.ip6.zone	                        (rev 0)
+++ staging-x86_64/localhost.ip6.zone	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,10 @@
+@                               1D IN SOA   localhost. root.localhost. (
+                                    42    ; serial (yyyymmdd##)
+                                    3H    ; refresh
+                                    15M   ; retry
+                                    1W    ; expiry
+                                    1D )  ; minimum ttl
+
+                                1D  IN  NS      localhost.
+
+1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa.   1D  IN  PTR localhost.

Copied: bind/repos/staging-x86_64/localhost.zone (from rev 345821, bind/trunk/localhost.zone)
===================================================================
--- staging-x86_64/localhost.zone	                        (rev 0)
+++ staging-x86_64/localhost.zone	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,11 @@
+@                               1D IN SOA   localhost. root.localhost. (
+                                    42    ; serial (yyyymmdd##)
+                                    3H    ; refresh
+                                    15M   ; retry
+                                    1W    ; expiry
+                                    1D )  ; minimum ttl
+
+                                1D  IN  NS      localhost.
+
+localhost.                      1D  IN  A       127.0.0.1
+localhost.                      1D  IN  AAAA    ::1

Copied: bind/repos/staging-x86_64/named.conf (from rev 345821, bind/trunk/named.conf)
===================================================================
--- staging-x86_64/named.conf	                        (rev 0)
+++ staging-x86_64/named.conf	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,72 @@
+// vim:set ts=4 sw=4 et:
+
+options {
+    directory "/var/named";
+    pid-file "/run/named/named.pid";
+
+    // Uncomment these to enable IPv6 connections support
+    // IPv4 will still work:
+    //  listen-on-v6 { any; };
+    // Add this for no IPv4:
+    //  listen-on { none; };
+
+    allow-recursion { 127.0.0.1; };
+    allow-transfer { none; };
+    allow-update { none; };
+
+    version none;
+    hostname none;
+    server-id none;
+};
+
+zone "localhost" IN {
+    type master;
+    file "localhost.zone";
+};
+
+zone "0.0.127.in-addr.arpa" IN {
+    type master;
+    file "127.0.0.zone";
+};
+
+zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" {
+    type master;
+    file "localhost.ip6.zone";
+};
+
+zone "255.in-addr.arpa" IN {
+    type master;
+    file "empty.zone";
+};
+
+zone "0.in-addr.arpa" IN {
+    type master;
+    file "empty.zone";
+};
+
+zone "." IN {
+    type hint;
+    file "root.hint";
+};
+
+//zone "example.org" IN {
+//    type slave;
+//    file "example.zone";
+//    masters {
+//        192.168.1.100;
+//    };
+//    allow-query { any; };
+//    allow-transfer { any; };
+//};
+
+//logging {
+//    channel xfer-log {
+//        file "/var/log/named.log";
+//            print-category yes;
+//            print-severity yes;
+//            severity info;
+//        };
+//        category xfer-in { xfer-log; };
+//        category xfer-out { xfer-log; };
+//        category notify { xfer-log; };
+//};

Copied: bind/repos/staging-x86_64/named.service (from rev 345821, bind/trunk/named.service)
===================================================================
--- staging-x86_64/named.service	                        (rev 0)
+++ staging-x86_64/named.service	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1,10 @@
+[Unit]
+Description=Internet domain name server
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/named -f -u named
+ExecReload=/usr/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target

Copied: bind/repos/staging-x86_64/sysusers.conf (from rev 345821, bind/trunk/sysusers.conf)
===================================================================
--- staging-x86_64/sysusers.conf	                        (rev 0)
+++ staging-x86_64/sysusers.conf	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1 @@
+u named 40 "BIND DNS Server" -

Copied: bind/repos/staging-x86_64/tmpfiles.conf (from rev 345821, bind/trunk/tmpfiles.conf)
===================================================================
--- staging-x86_64/tmpfiles.conf	                        (rev 0)
+++ staging-x86_64/tmpfiles.conf	2019-02-10 03:01:09 UTC (rev 345822)
@@ -0,0 +1 @@
+d /run/named 0750 named named -



More information about the arch-commits mailing list