From c605d75ea5e1d200ea332f25d2bc303984517d9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Sur=C3=BD?= Date: Tue, 12 Jan 2021 13:38:44 +0100 Subject: [PATCH] Use -release instead of -version-info for internal library SONAMEs The BIND 9 libraries are considered to be internal only and hence the API and ABI changes a lot. Keeping track of the API/ABI changes takes time and it's a complicated matter as the safest way to make everything stable would be to bump any library in the dependency chain as in theory if libns links with libdns, and a binary links with both, and we bump the libdns SOVERSION, but not the libns SOVERSION, the old libns might be loaded by binary pulling old libdns together with new libdns loaded by the binary. The situation gets even more complicated with loading the plugins that have been compiled with few versions old BIND 9 libraries and then dynamically loaded into the named. We are picking the safest option possible and usable for internal libraries - instead of using -version-info that has only a weak link to BIND 9 version number, we are using -release libtool option that will embed the corresponding BIND 9 version number into the library name. That means that instead of libisc.so.1701 (as an example) the library will now be named libisc-9.17.10.so. --- .gitlab-ci.yml | 33 --------------- configure.ac | 11 ----- lib/bind9/Makefile.am | 4 +- lib/bind9/api | 16 -------- lib/dns/Makefile.am | 3 +- lib/dns/api | 16 -------- lib/irs/Makefile.am | 5 +-- lib/irs/api | 16 -------- lib/isc/Makefile.am | 4 +- lib/isc/api | 16 -------- lib/isccc/Makefile.am | 4 +- lib/isccc/api | 16 -------- lib/isccfg/Makefile.am | 4 +- lib/isccfg/api | 16 -------- lib/ns/Makefile.am | 4 +- lib/ns/api | 16 -------- m4/ax_bind9_lib_version.m4 | 10 ----- util/api-checker.sh | 83 -------------------------------------- util/copyrights | 8 ---- 19 files changed, 7 insertions(+), 278 deletions(-) delete mode 100644 lib/bind9/api delete mode 100644 lib/dns/api delete mode 100644 lib/irs/api delete mode 100644 lib/isc/api delete mode 100644 lib/isccc/api delete mode 100644 lib/isccfg/api delete mode 100644 lib/ns/api delete mode 100644 m4/ax_bind9_lib_version.m4 delete mode 100755 util/api-checker.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4f3056d434..1dfccdbf50 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1504,39 +1504,6 @@ stress:recursive:freebsd12:amd64: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) -# ABI check - -abi-check: - <<: *base_image - stage: build - needs: - - job: autoreconf - artifacts: true - variables: - CC: gcc - CFLAGS: "${CFLAGS_COMMON} -Og" - EXTRA_CONFIGURE: "--enable-dnstap --with-libidn2" - BIND_BASELINE_VERSION: v9_17_9 - script: - - *configure - - make -j${BUILD_PARALLEL_JOBS:-1} V=1 - - git clone --branch "${BIND_BASELINE_VERSION}" --depth 1 https://gitlab.isc.org/isc-projects/bind9.git refbind - - cd refbind/ - - autoreconf -fi - - *configure - - make -j${BUILD_PARALLEL_JOBS:-1} V=1 - - cd .. - - util/api-checker.sh . refbind - artifacts: - paths: - - "*-lib*.html" - - "*-lib*.txt" - - "abi-*.dump" - expire_in: "1 week" - only: - - main@isc-projects/bind9 - - /^v9_[1-9][0-9]$/@isc-projects/bind9 - gcov: <<: *base_image <<: *default_triggering_rules diff --git a/configure.ac b/configure.ac index 75fc3fbd50..2944b3ca44 100644 --- a/configure.ac +++ b/configure.ac @@ -71,17 +71,6 @@ AS_IF([test "$cross_compiling" = no], [AM_MAINTAINER_MODE(m4_ifset([bind_SRCID],[enable],[disable]))], [AM_MAINTAINER_MODE([disable])]) -# Set the library versions -# https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html - -AX_BIND9_LIB_VERSION([bind9]) -AX_BIND9_LIB_VERSION([dns]) -AX_BIND9_LIB_VERSION([irs]) -AX_BIND9_LIB_VERSION([isc]) -AX_BIND9_LIB_VERSION([isccc]) -AX_BIND9_LIB_VERSION([isccfg]) -AX_BIND9_LIB_VERSION([ns]) - # # Enable system extensions to C and POSIX # diff --git a/lib/bind9/Makefile.am b/lib/bind9/Makefile.am index f981c9216d..f3e8c377fc 100644 --- a/lib/bind9/Makefile.am +++ b/lib/bind9/Makefile.am @@ -28,6 +28,4 @@ libbind9_la_LIBADD = \ libbind9_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libbind9_VERSION_INFO) - -EXTRA_DIST = api + -release "$(PACKAGE_VERSION)" diff --git a/lib/bind9/api b/lib/bind9/api deleted file mode 100644 index 1f742a50af..0000000000 --- a/lib/bind9/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1701 -LIBREVISION = 4 -LIBAGE = 0 diff --git a/lib/dns/Makefile.am b/lib/dns/Makefile.am index 61c0ef45c2..d996b5b16d 100644 --- a/lib/dns/Makefile.am +++ b/lib/dns/Makefile.am @@ -22,7 +22,6 @@ gen$(BUILD_EXEEXT): gen.c gen-unix.h $(CC_FOR_BUILD) -g -I. $(GEN_NEED_OPTARG) $(srcdir)/gen.c -o $@ EXTRA_DIST = \ - api \ dnstap.proto \ gen.c \ gen-unix.h \ @@ -282,7 +281,7 @@ libdns_la_CPPFLAGS = \ libdns_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libdns_VERSION_INFO) + -release "$(PACKAGE_VERSION)" libdns_la_LIBADD = \ $(LIBISC_LIBS) \ diff --git a/lib/dns/api b/lib/dns/api deleted file mode 100644 index 73f959a036..0000000000 --- a/lib/dns/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1709 -LIBREVISION = 0 -LIBAGE = 0 diff --git a/lib/irs/Makefile.am b/lib/irs/Makefile.am index f7b82b47bc..eac972b26d 100644 --- a/lib/irs/Makefile.am +++ b/lib/irs/Makefile.am @@ -24,11 +24,8 @@ libirs_la_LIBADD = \ libirs_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libirs_VERSION_INFO) - + -release "$(PACKAGE_VERSION)" if HAVE_CMOCKA SUBDIRS = tests endif - -EXTRA_DIST = api diff --git a/lib/irs/api b/lib/irs/api deleted file mode 100644 index 88c9b9df52..0000000000 --- a/lib/irs/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1701 -LIBREVISION = 0 -LIBAGE = 0 diff --git a/lib/isc/Makefile.am b/lib/isc/Makefile.am index 57f5b19f5a..c516fd5458 100644 --- a/lib/isc/Makefile.am +++ b/lib/isc/Makefile.am @@ -229,7 +229,7 @@ libisc_la_CPPFLAGS = \ libisc_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libisc_VERSION_INFO) + -release "$(PACKAGE_VERSION)" libisc_la_LIBADD = \ $(LIBUV_LIBS) \ @@ -255,5 +255,3 @@ endif HAVE_LIBXML2 if HAVE_CMOCKA SUBDIRS = tests endif - -EXTRA_DIST = api diff --git a/lib/isc/api b/lib/isc/api deleted file mode 100644 index 313f25dc92..0000000000 --- a/lib/isc/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1707 -LIBREVISION = 1 -LIBAGE = 0 diff --git a/lib/isccc/Makefile.am b/lib/isccc/Makefile.am index aca06f777f..d5cc537ead 100644 --- a/lib/isccc/Makefile.am +++ b/lib/isccc/Makefile.am @@ -36,10 +36,8 @@ libisccc_la_LIBADD = \ libisccc_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libisccc_VERSION_INFO) + -release "$(PACKAGE_VERSION)" if HAVE_CMOCKA SUBDIRS = tests endif - -EXTRA_DIST = api diff --git a/lib/isccc/api b/lib/isccc/api deleted file mode 100644 index c1c1be9b85..0000000000 --- a/lib/isccc/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1703 -LIBREVISION = 0 -LIBAGE = 0 diff --git a/lib/isccfg/Makefile.am b/lib/isccfg/Makefile.am index a9853decfc..3205e3b93b 100644 --- a/lib/isccfg/Makefile.am +++ b/lib/isccfg/Makefile.am @@ -32,10 +32,8 @@ libisccfg_la_LIBADD = \ libisccfg_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libisccfg_VERSION_INFO) + -release "$(PACKAGE_VERSION)" if HAVE_CMOCKA SUBDIRS = tests endif - -EXTRA_DIST = api diff --git a/lib/isccfg/api b/lib/isccfg/api deleted file mode 100644 index 2a38956a54..0000000000 --- a/lib/isccfg/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1704 -LIBREVISION = 0 -LIBAGE = 0 diff --git a/lib/ns/Makefile.am b/lib/ns/Makefile.am index 243d087c5c..cdfc6192bc 100644 --- a/lib/ns/Makefile.am +++ b/lib/ns/Makefile.am @@ -56,10 +56,8 @@ libns_la_LIBADD = \ libns_la_LDFLAGS = \ $(AM_LDFLAGS) \ - $(libns_VERSION_INFO) + -release "$(PACKAGE_VERSION)" if HAVE_CMOCKA SUBDIRS = tests endif - -EXTRA_DIST = api diff --git a/lib/ns/api b/lib/ns/api deleted file mode 100644 index f55bd9eef6..0000000000 --- a/lib/ns/api +++ /dev/null @@ -1,16 +0,0 @@ -# LIBINTERFACE ranges -# 9.6: 50-59, 110-119 -# 9.7: 60-79 -# 9.8: 80-89, 120-129 -# 9.9: 90-109, 170-179 -# 9.9-sub: 130-139, 150-159, 200-209 -# 9.10: 140-149, 190-199 -# 9.10-sub: 180-189 -# 9.11: 160-169,1100-1199 -# 9.12: 1200-1299 -# 9.13/9.14: 1300-1499 -# 9.15/9.16: 1500-1699 -# 9.17/9.18: 1700-1899 -LIBINTERFACE = 1707 -LIBREVISION = 0 -LIBAGE = 0 diff --git a/m4/ax_bind9_lib_version.m4 b/m4/ax_bind9_lib_version.m4 deleted file mode 100644 index dd08f6b7d7..0000000000 --- a/m4/ax_bind9_lib_version.m4 +++ /dev/null @@ -1,10 +0,0 @@ -AC_DEFUN([AX_BIND9_LIB_VERSION], - [AS_IF([test -z "$SED"], - [AC_PROG_SED]) - AS_IF([test -z "$SED"], - [AC_MSG_ERROR([sed not found, but required, set \$SED to sed])]) - ax_bind9_lib$1_current=`$SED -n "s,^LIBINTERFACE = \(.*\),\1,p" "$srcdir/lib/$1/api"` - ax_bind9_lib$1_revision=`$SED -n "s,^LIBREVISION = \(.*\),\1,p" "$srcdir/lib/$1/api"` - ax_bind9_lib$1_age=`$SED -n "s,^LIBAGE = \(.*\),\1,p" "$srcdir/lib/$1/api"` - AC_SUBST([lib$1_VERSION_INFO],["-version-info $ax_bind9_lib$1_current:$ax_bind9_lib$1_revision:$ax_bind9_lib$1_age]") - ]) diff --git a/util/api-checker.sh b/util/api-checker.sh deleted file mode 100755 index 978731b037..0000000000 --- a/util/api-checker.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash -# -# Copyright (C) Internet Systems Consortium, Inc. ("ISC") -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, you can obtain one at https://mozilla.org/MPL/2.0/. -# -# See the COPYRIGHT file distributed with this work for additional -# information regarding copyright ownership. - -set -e - -# Exit if program $1 is not found in PATH. -check_program() { - if ! command -v "${1}" > /dev/null 2>&1; then - echo "'${1}' not found in PATH" >&2 - exit 1 - fi -} - -# Check that we were spawned with two arguments and that these arguments are two -# different directories. -check_args() { - if [ ${#} -ne 2 ] || [ ! -d "${1}" ] || [ ! -d "${2}" ] || [ "${1}" = "${2}" ]; then - echo "Usage:" - echo "" - echo " ${0} " - echo "" - echo "Generate API compatibility reports for BIND libraries." - echo "" - echo " is a directory with current (new) BIND version" - echo " is a directory with reference (old) BIND version" - exit 1 - fi -} - -check_args "${@}" -TESTBIND="${1}" -REFBIND="${2}" - -# Ensure the required tools are available in PATH. -check_program abi-dumper -check_program abi-compliance-checker -check_program git -check_program w3m - -# Find all libraries which have designated 'api' file and -# generate ABI dump file for them. -while read -r SO; do - APIFILE="$(dirname "${SO}")/../api" - APIFILE_DIR=$(dirname "${APIFILE}") - GIT_HEAD_REV=$(git -C "${APIFILE_DIR}" rev-parse HEAD | cut -c 1-10) - GIT_HEAD_UNIX_TIME=$(git -C "${APIFILE_DIR}" log -1 --format=%ct HEAD) - # Get LIBINTERFACE, LIBREVISION, LIBAGE from the 'api' file. - eval "$(grep -v "^#" "${APIFILE}" | tr -d " ")" - VERSION="${LIBINTERFACE}.${LIBREVISION}.${LIBAGE}-${GIT_HEAD_UNIX_TIME}-${GIT_HEAD_REV}" - abi-dumper "${SO}" -o abi-"$(basename "${SO}" .so)-${VERSION}".dump -lver "${VERSION}" -done < <(find "${TESTBIND}"/lib/*/.libs/ "${REFBIND}"/lib/*/.libs/ -name '*.so' ! -name '*-nosymtbl*') - -# Generate HTML API compatibility reports for all libraries. -find . -maxdepth 1 -name 'abi-*.dump' | sort | while read -r OLD; read -r NEW; do - SONAME=${OLD/.\/abi-/} - SONAME=${SONAME/-*/} - if abi-compliance-checker -l "${SONAME}" -old "${OLD}" -new "${NEW}"; then - REPORT_PREFIX="PASS" - else - echo "***** Compatibility problems detected" - REPORT_PREFIX="WARN" - fi - OLD_REPORT_PATH="$(find "compat_reports/${SONAME}" -name '*.html')" - NEW_REPORT_PATH="${REPORT_PREFIX}-${SONAME}.html" - mv "${OLD_REPORT_PATH}" "${NEW_REPORT_PATH}" - echo -done - -# Generate TXT API compatibility reports from HTML reports for all BIND libraries. -echo "Generate TXT API compatibility reports from HTML reports for all BIND libraries:" -while read -r HTMLREPORT; do - TXTREPORT="${HTMLREPORT/.html/.txt}" - echo " w3m: ${HTMLREPORT} -> ${TXTREPORT}" - w3m -dump -cols 75 -O ascii -T text/html "${HTMLREPORT}" > "${TXTREPORT}" -done < <(find . -maxdepth 1 -name '*-lib*.html') diff --git a/util/copyrights b/util/copyrights index b17dd9d4f4..4898b95b77 100644 --- a/util/copyrights +++ b/util/copyrights @@ -1274,7 +1274,6 @@ ./fuzz/isc_lex_gettoken.c C 2020,2021 ./fuzz/libfuzzer.sh SH 2020,2021 ./fuzz/main.c C 2018,2019,2020,2021 -./lib/bind9/api X 2001,2006,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/bind9/check.c C 2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/bind9/getaddresses.c C 2001,2002,2004,2005,2007,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/bind9/include/bind9/check.h C 2001,2004,2005,2006,2007,2016,2018,2019,2020,2021 @@ -1286,7 +1285,6 @@ ./lib/bind9/win32/libbind9.vcxproj.user X 2013,2018,2019,2020,2021 ./lib/dns/acl.c C 1999,2000,2001,2002,2004,2005,2006,2007,2008,2009,2011,2013,2014,2016,2017,2018,2019,2020,2021 ./lib/dns/adb.c C 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 -./lib/dns/api X 1999,2000,2001,2006,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/dns/badcache.c C 2014,2015,2016,2018,2019,2020,2021 ./lib/dns/byaddr.c C 2000,2001,2002,2003,2004,2005,2007,2009,2013,2016,2017,2018,2019,2020,2021 ./lib/dns/cache.c C 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 @@ -1742,7 +1740,6 @@ ./lib/dns/zonekey.c C 2001,2003,2004,2005,2007,2016,2018,2019,2020,2021 ./lib/dns/zoneverify.c C 2018,2019,2020,2021 ./lib/dns/zt.c C 1999,2000,2001,2002,2004,2005,2006,2007,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 -./lib/irs/api X 2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/irs/include/irs/resconf.h C 2009,2014,2016,2018,2019,2020,2021 ./lib/irs/resconf.c C 2009,2011,2012,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/irs/tests/resconf_test.c C 2016,2018,2019,2020,2021 @@ -1770,7 +1767,6 @@ ./lib/irs/win32/libirs.vcxproj.user X 2014,2018,2019,2020,2021 ./lib/irs/win32/resconf.c C 2018,2019,2020,2021 ./lib/isc/aes.c C 2014,2016,2017,2018,2019,2020,2021 -./lib/isc/api X 1999,2000,2001,2006,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/isc/app.c C 1999,2000,2001,2002,2003,2004,2005,2007,2008,2009,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/isc/assertions.c C 1997,1998,1999,2000,2001,2004,2005,2007,2008,2009,2015,2016,2018,2019,2020,2021 ./lib/isc/astack.c C 2019,2020,2021 @@ -2070,7 +2066,6 @@ ./lib/isc/win32/unistd.h C 2000,2001,2004,2007,2008,2009,2016,2018,2019,2020,2021 ./lib/isc/win32/win32os.c C 2002,2004,2007,2013,2014,2015,2016,2018,2019,2020,2021 ./lib/isccc/alist.c C.NOM 2001,2004,2005,2007,2015,2016,2018,2019,2020,2021 -./lib/isccc/api X 2001,2006,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/isccc/base64.c C.NOM 2001,2004,2005,2007,2013,2016,2018,2019,2020,2021 ./lib/isccc/cc.c C.NOM 2001,2002,2003,2004,2005,2006,2007,2012,2013,2014,2015,2016,2018,2019,2020,2021 ./lib/isccc/ccmsg.c C.NOM 2001,2004,2005,2007,2016,2018,2019,2020,2021 @@ -2095,7 +2090,6 @@ ./lib/isccc/win32/libisccc.vcxproj.in X 2013,2014,2015,2016,2017,2018,2019,2020 ./lib/isccc/win32/libisccc.vcxproj.user X 2013,2018,2019,2020,2021 ./lib/isccfg/aclconf.c C 1999,2000,2001,2002,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 -./lib/isccfg/api X 2001,2006,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021 ./lib/isccfg/dnsconf.c C 2009,2016,2018,2019,2020,2021 ./lib/isccfg/include/isccfg/aclconf.h C 1999,2000,2001,2004,2005,2006,2007,2010,2011,2012,2013,2014,2016,2018,2019,2020,2021 ./lib/isccfg/include/isccfg/cfg.h C 2000,2001,2002,2004,2005,2006,2007,2010,2013,2014,2015,2016,2018,2019,2020,2021 @@ -2114,7 +2108,6 @@ ./lib/isccfg/win32/libisccfg.vcxproj.filters.in X 2013,2014,2015,2016,2018,2019,2020 ./lib/isccfg/win32/libisccfg.vcxproj.in X 2013,2014,2015,2016,2017,2018,2019,2020 ./lib/isccfg/win32/libisccfg.vcxproj.user X 2013,2018,2019,2020,2021 -./lib/ns/api X 2017,2018,2019,2020,2021 ./lib/ns/client.c C 2017,2018,2019,2020,2021 ./lib/ns/hooks.c C 2018,2019,2020,2021 ./lib/ns/include/ns/client.h C 2017,2018,2019,2020,2021 @@ -2188,7 +2181,6 @@ ./util/COPYRIGHT.NOM X 2001,2004,2007,2016,2018,2019,2020,2021 ./util/COPYRIGHT.PORTION X 1996,1997,1998,1999,2000,2001,2004,2007,2016,2018,2019,2020,2021 ./util/COPYRIGHT.TOP X 2018,2019,2020,2021 -./util/api-checker.sh SH 2020,2021 ./util/bindkeys.pl PERL 2009,2010,2011,2012,2014,2016,2017,2018,2019,2020,2021 ./util/branchsync.sh SH 2013,2016,2018,2019,2020,2021 ./util/check-categories.sh SH 2015,2016,2017,2018,2019,2020,2021