diff options
| author | Ralph Siemsen <ralph.siemsen@linaro.org> | 2022-03-10 13:32:34 -0500 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-03-11 23:44:42 +0000 |
| commit | b41d4e46d30ed32e11d68466721a0f4056bad700 (patch) | |
| tree | 3f112a9c28ee4037c255a8a30a927c06aa743544 /meta/recipes-connectivity/bind/bind_9.11.36.bb | |
| parent | f593e21aad8a972bcb42ac0af112056e9dda6b25 (diff) | |
| download | poky-yocto-3.1.15.tar.gz | |
bind: update to 9.11.36yocto-3.1.15dunfell-23.0.15
Security Fixes
The lame-ttl option controls how long named caches certain types of
broken responses from authoritative servers (see the security advisory
for details). This caching mechanism could be abused by an attacker to
significantly degrade resolver performance. The vulnerability has been
mitigated by changing the default value of lame-ttl to 0 and overriding
any explicitly set value with 0, effectively disabling this mechanism
altogether. ISC's testing has determined that doing that has a
negligible impact on resolver performance while also preventing abuse.
Administrators may observe more traffic towards servers issuing certain
types of broken responses than in previous BIND 9 releases, depending on
client query patterns. (CVE-2021-25219)
ISC would like to thank Kishore Kumar Kothapalli of Infoblox for
bringing this vulnerability to our attention. [GL #2899]
(From OE-Core rev: 8906aa9ec0a80b0f8998fb793f4e9491b3179179)
Signed-off-by: Ralph Siemsen <ralph.siemsen@linaro.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-connectivity/bind/bind_9.11.36.bb')
| -rw-r--r-- | meta/recipes-connectivity/bind/bind_9.11.36.bb | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/bind/bind_9.11.36.bb b/meta/recipes-connectivity/bind/bind_9.11.36.bb new file mode 100644 index 0000000000..872baf6d2f --- /dev/null +++ b/meta/recipes-connectivity/bind/bind_9.11.36.bb | |||
| @@ -0,0 +1,141 @@ | |||
| 1 | SUMMARY = "ISC Internet Domain Name Server" | ||
| 2 | HOMEPAGE = "https://www.isc.org/bind/" | ||
| 3 | DESCRIPTION = "BIND 9 provides a full-featured Domain Name Server system" | ||
| 4 | SECTION = "console/network" | ||
| 5 | |||
| 6 | LICENSE = "ISC & BSD" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=b88e7ca5f21908e1b2720169f6807cf6" | ||
| 8 | |||
| 9 | DEPENDS = "openssl libcap zlib" | ||
| 10 | |||
| 11 | SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.gz \ | ||
| 12 | file://conf.patch \ | ||
| 13 | file://named.service \ | ||
| 14 | file://bind9 \ | ||
| 15 | file://generate-rndc-key.sh \ | ||
| 16 | file://make-etc-initd-bind-stop-work.patch \ | ||
| 17 | file://init.d-add-support-for-read-only-rootfs.patch \ | ||
| 18 | file://bind-ensure-searching-for-json-headers-searches-sysr.patch \ | ||
| 19 | file://0001-configure.in-remove-useless-L-use_openssl-lib.patch \ | ||
| 20 | file://0001-named-lwresd-V-and-start-log-hide-build-options.patch \ | ||
| 21 | file://0001-avoid-start-failure-with-bind-user.patch \ | ||
| 22 | " | ||
| 23 | |||
| 24 | SRC_URI[sha256sum] = "c953fcb6703b395aaa53e65ff8b2869b69a5303dd60507cba2201305e1811681" | ||
| 25 | |||
| 26 | UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/" | ||
| 27 | # stay at 9.11 until 9.16, from 9.16 follow the ESV versions divisible by 4 | ||
| 28 | UPSTREAM_CHECK_REGEX = "(?P<pver>9.(11|16|20|24|28)(\.\d+)+(-P\d+)*)/" | ||
| 29 | |||
| 30 | # BIND >= 9.11.2 need dhcpd >= 4.4.0, | ||
| 31 | # don't report it here since dhcpd is already recent enough. | ||
| 32 | CVE_CHECK_WHITELIST += "CVE-2019-6470" | ||
| 33 | |||
| 34 | inherit autotools update-rc.d systemd useradd pkgconfig multilib_script multilib_header | ||
| 35 | |||
| 36 | MULTILIB_SCRIPTS = "${PN}:${bindir}/bind9-config ${PN}:${bindir}/isc-config.sh" | ||
| 37 | |||
| 38 | # PACKAGECONFIGs readline and libedit should NOT be set at same time | ||
| 39 | PACKAGECONFIG ?= "readline" | ||
| 40 | PACKAGECONFIG[httpstats] = "--with-libxml2=${STAGING_DIR_HOST}${prefix},--without-libxml2,libxml2" | ||
| 41 | PACKAGECONFIG[readline] = "--with-readline=-lreadline,,readline" | ||
| 42 | PACKAGECONFIG[libedit] = "--with-readline=-ledit,,libedit" | ||
| 43 | PACKAGECONFIG[urandom] = "--with-randomdev=/dev/urandom,--with-randomdev=/dev/random,," | ||
| 44 | PACKAGECONFIG[python3] = "--with-python=yes --with-python-install-dir=${PYTHON_SITEPACKAGES_DIR} , --without-python, python3-ply-native," | ||
| 45 | |||
| 46 | ENABLE_IPV6 = "--enable-ipv6=${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'yes', 'no', d)}" | ||
| 47 | EXTRA_OECONF = " ${ENABLE_IPV6} --with-libtool --enable-threads \ | ||
| 48 | --disable-devpoll --enable-epoll --with-gost=no \ | ||
| 49 | --with-gssapi=no --with-ecdsa=yes --with-eddsa=no \ | ||
| 50 | --with-lmdb=no \ | ||
| 51 | --sysconfdir=${sysconfdir}/bind \ | ||
| 52 | --with-openssl=${STAGING_DIR_HOST}${prefix} \ | ||
| 53 | " | ||
| 54 | |||
| 55 | inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native distutils3-base', '', d)} | ||
| 56 | |||
| 57 | # dhcp needs .la so keep them | ||
| 58 | REMOVE_LIBTOOL_LA = "0" | ||
| 59 | |||
| 60 | USERADD_PACKAGES = "${PN}" | ||
| 61 | USERADD_PARAM_${PN} = "--system --home ${localstatedir}/cache/bind --no-create-home \ | ||
| 62 | --user-group bind" | ||
| 63 | |||
| 64 | INITSCRIPT_NAME = "bind" | ||
| 65 | INITSCRIPT_PARAMS = "defaults" | ||
| 66 | |||
| 67 | SYSTEMD_SERVICE_${PN} = "named.service" | ||
| 68 | |||
| 69 | do_install_prepend() { | ||
| 70 | # clean host path in isc-config.sh before the hardlink created | ||
| 71 | # by "make install": | ||
| 72 | # bind9-config -> isc-config.sh | ||
| 73 | sed -i -e "s,${STAGING_LIBDIR},${libdir}," ${B}/isc-config.sh | ||
| 74 | } | ||
| 75 | |||
| 76 | do_install_append() { | ||
| 77 | |||
| 78 | rmdir "${D}${localstatedir}/run" | ||
| 79 | rmdir --ignore-fail-on-non-empty "${D}${localstatedir}" | ||
| 80 | install -d -o bind "${D}${localstatedir}/cache/bind" | ||
| 81 | install -d "${D}${sysconfdir}/bind" | ||
| 82 | install -d "${D}${sysconfdir}/init.d" | ||
| 83 | install -m 644 ${S}/conf/* "${D}${sysconfdir}/bind/" | ||
| 84 | install -m 755 "${S}/init.d" "${D}${sysconfdir}/init.d/bind" | ||
| 85 | if ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'true', 'false', d)}; then | ||
| 86 | sed -i -e '1s,#!.*python3,#! /usr/bin/python3,' \ | ||
| 87 | ${D}${sbindir}/dnssec-coverage \ | ||
| 88 | ${D}${sbindir}/dnssec-checkds \ | ||
| 89 | ${D}${sbindir}/dnssec-keymgr | ||
| 90 | fi | ||
| 91 | |||
| 92 | # Install systemd related files | ||
| 93 | install -d ${D}${sbindir} | ||
| 94 | install -m 755 ${WORKDIR}/generate-rndc-key.sh ${D}${sbindir} | ||
| 95 | install -d ${D}${systemd_unitdir}/system | ||
| 96 | install -m 0644 ${WORKDIR}/named.service ${D}${systemd_unitdir}/system | ||
| 97 | sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
| 98 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
| 99 | ${D}${systemd_unitdir}/system/named.service | ||
| 100 | |||
| 101 | install -d ${D}${sysconfdir}/default | ||
| 102 | install -m 0644 ${WORKDIR}/bind9 ${D}${sysconfdir}/default | ||
| 103 | |||
| 104 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
| 105 | install -d ${D}${sysconfdir}/tmpfiles.d | ||
| 106 | echo "d /run/named 0755 bind bind - -" > ${D}${sysconfdir}/tmpfiles.d/bind.conf | ||
| 107 | fi | ||
| 108 | |||
| 109 | oe_multilib_header isc/platform.h | ||
| 110 | } | ||
| 111 | |||
| 112 | CONFFILES_${PN} = " \ | ||
| 113 | ${sysconfdir}/bind/named.conf \ | ||
| 114 | ${sysconfdir}/bind/named.conf.local \ | ||
| 115 | ${sysconfdir}/bind/named.conf.options \ | ||
| 116 | ${sysconfdir}/bind/db.0 \ | ||
| 117 | ${sysconfdir}/bind/db.127 \ | ||
| 118 | ${sysconfdir}/bind/db.empty \ | ||
| 119 | ${sysconfdir}/bind/db.local \ | ||
| 120 | ${sysconfdir}/bind/db.root \ | ||
| 121 | " | ||
| 122 | |||
| 123 | ALTERNATIVE_${PN}-utils = "nslookup" | ||
| 124 | ALTERNATIVE_LINK_NAME[nslookup] = "${bindir}/nslookup" | ||
| 125 | ALTERNATIVE_PRIORITY = "100" | ||
| 126 | |||
| 127 | PACKAGE_BEFORE_PN += "${PN}-utils" | ||
| 128 | FILES_${PN}-utils = "${bindir}/host ${bindir}/dig ${bindir}/mdig ${bindir}/nslookup ${bindir}/nsupdate" | ||
| 129 | FILES_${PN}-dev += "${bindir}/isc-config.h" | ||
| 130 | FILES_${PN} += "${sbindir}/generate-rndc-key.sh" | ||
| 131 | |||
| 132 | PACKAGE_BEFORE_PN += "${PN}-libs" | ||
| 133 | FILES_${PN}-libs = "${libdir}/*.so*" | ||
| 134 | FILES_${PN}-staticdev += "${libdir}/*.la" | ||
| 135 | |||
| 136 | PACKAGE_BEFORE_PN += "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-bind', '', d)}" | ||
| 137 | FILES_python3-bind = "${sbindir}/dnssec-coverage ${sbindir}/dnssec-checkds \ | ||
| 138 | ${sbindir}/dnssec-keymgr ${PYTHON_SITEPACKAGES_DIR}" | ||
| 139 | |||
| 140 | RDEPENDS_${PN}-dev = "" | ||
| 141 | RDEPENDS_python3-bind = "python3-core python3-ply" | ||
