Merge pull request #9551 from neheb/elek
authorRosen Penev <rosenp@gmail.com>
Fri, 26 Jul 2019 03:36:23 +0000 (20:36 -0700)
committerGitHub <noreply@github.com>
Fri, 26 Jul 2019 03:36:23 +0000 (20:36 -0700)
elektra: Switch to Lua 5.3

68 files changed:
admin/openwisp-config/Makefile
admin/zabbix/Makefile
kernel/cifsd/Makefile
lang/python/MarkupSafe/Makefile
lang/python/python-egenix-mx-base/Makefile
libs/elektra/Makefile
libs/expat/Makefile
libs/intltool/Makefile
libs/libxslt/Makefile
libs/libxslt/patches/101-fix-cve-2019-13117.patch [new file with mode: 0644]
libs/libxslt/patches/102-fix-cve-2019-13118.patch [new file with mode: 0644]
libs/lmdb/Makefile [new file with mode: 0644]
libs/lmdb/patches/010-fix-makefile.patch [new file with mode: 0644]
libs/lmdb/src/liblmdb.pc [new file with mode: 0644]
libs/pcre/Makefile
libs/postgresql/Makefile
libs/psqlodbc/Makefile
libs/sqlite3/Makefile
libs/tdb/Makefile
libs/unixodbc/Makefile
libs/zmq/Makefile
mail/opendkim/Makefile
mail/opendkim/patches/020-uclibc.patch [new file with mode: 0644]
net/aircrack-ng/Makefile
net/cifsd-tools/Makefile
net/cifsd-tools/files/cifsd.init
net/dynapoint/Makefile
net/fastd/Makefile
net/fastd/patches/0001-resolve-fix-segmentation-fault-with-musl-1.1.20.patch [new file with mode: 0644]
net/haproxy/Makefile
net/haproxy/get-latest-patches.sh
net/haproxy/patches/000-BUG-MINOR-mworker-cli-dont-output-a-n-before-the-response.patch [deleted file]
net/haproxy/patches/000-OPENWRT-add-uclibc-support.patch [new file with mode: 0644]
net/haproxy/patches/001-BUG-MEDIUM-ssl-Dont-attempt-to-set-alpn-if-were-not-using-SSL.patch [deleted file]
net/haproxy/patches/001-OPENWRT-openssl-deprecated.patch [new file with mode: 0644]
net/haproxy/patches/002-BUG-MEDIUM-mux-h1-Always-release-H1C-if-a-shutdown-for-writes-was-reported.patch [deleted file]
net/haproxy/patches/003-BUG-MEDIUM-checks-unblock-signals-in-external-checks.patch [deleted file]
net/haproxy/patches/004-BUG-MINOR-mux-h1-Skip-trailers-for-non-chunked-outgoing-messages.patch [deleted file]
net/haproxy/patches/005-BUG-MINOR-mux-h1-Dont-return-the-empty-chunk-on-HEAD-responses.patch [deleted file]
net/haproxy/patches/006-OPENWRT-add-uclibc-support.patch [deleted file]
net/haproxy/patches/007-OPENWRT-openssl-deprecated.patch [deleted file]
net/hcxdumptool/Makefile
net/hcxtools/Makefile
net/horst/Makefile
net/kea/Makefile
net/kismet/Makefile
net/netifyd/Makefile
net/pdns-recursor/Makefile
net/pdns-recursor/files/recursor.conf-dist
net/pdns-recursor/patches/200-libatomic-detect.patch [deleted file]
net/pdns-recursor/patches/300-gen-version.patch [deleted file]
net/pixiewps/Makefile
net/reaver/Makefile
net/rp-pppoe/Makefile
net/socat/Makefile
net/socat/patches/100-usleep.patch [new file with mode: 0644]
net/tcpreplay/Makefile
net/wavemon/Makefile
net/wifischedule/Makefile
utils/fontconfig/Makefile
utils/io/Makefile
utils/io/src/io.c
utils/mariadb/Makefile
utils/prometheus/Makefile
utils/prometheus/patches/001-update-fsnotify.patch [new file with mode: 0644]
utils/rrdtool1/Makefile
utils/tar/Makefile
utils/xz/Makefile

index c2237e321cf8ab4eef83b0f725f2c88175bb12a1..a109de17958a48101d44002af7ff145b9d14bf1c 100644 (file)
@@ -24,7 +24,7 @@ define Package/openwisp-config/default
        TITLE:=Remote configuration management agent ($(2) variant)
        CATEGORY:=Administration
        SECTION:=admin
-       SUBMENU:=openwisp
+       SUBMENU:=OpenWISP
        DEPENDS:=+curl +lua +libuci-lua +luafilesystem $(3)
        VARIANT:=$(1)
        MAINTAINER:=Federico Capoano <f.capoano@cineca.it>
index 8dadb21a674502de0e04004a179927f44e177ad4..36b108338fe2843750d73a37a9b8d10612272f10 100644 (file)
@@ -71,7 +71,7 @@ endef
 define Package/zabbix/Default
   SECTION:=admin
   CATEGORY:=Administration
-  SUBMENU:=zabbix
+  SUBMENU:=Zabbix
   TITLE:=Zabbix
   URL:=https://www.zabbix.com/
   USERID:=zabbix=53:zabbix=53
index 1f28e9815cd7f9d21425696eb6c9f3f47f730cc7..ac514b16bee49cb492b8ef22a515aabf9753df5d 100644 (file)
@@ -5,9 +5,9 @@ PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/cifsd-team/cifsd.git
-PKG_SOURCE_DATE:=2019-07-12
-PKG_SOURCE_VERSION:=f2cfe8cb40493a5f77144543bc486bfdb8aa61e2
-PKG_MIRROR_HASH:=fd6a3bec5953fa30b87a6e12e2c6666844ad66096afa7de421689f5769626a36
+PKG_SOURCE_DATE:=2019-07-17
+PKG_SOURCE_VERSION:=0c3049e84fc7737cedbcef3e1791a570871168cd
+PKG_MIRROR_HASH:=2717cb1e3d28e7ff5ea69c3fa2a6ae182b70bcdf8680a41a0df2b190b072d04b
 
 PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
 PKG_LICENSE:=GPL-2.0-or-later
index d3e119a03a3879e5896073151f93c594c4b81c1c..77cba24d0f4db515c4f31b5779a943a3365a3bf4 100644 (file)
@@ -6,18 +6,17 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=MarkupSafe
 PKG_VERSION:=1.1.1
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/M/MarkupSafe
 PKG_HASH:=29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b
-PKG_BUILD_DEPENDS:=python python3
-PKG_LICENSE:=BSD-3-Clause
-PKG_LICENSE_FILES:=LICENSE
+
 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
+PKG_LICENSE:=BSD-3-Clause
+PKG_LICENSE_FILES:=LICENSE.rst
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)-$(PKG_NAME)-$(PKG_VERSION)
-PKG_UNPACK=$(HOST_TAR) -C $(PKG_BUILD_DIR) --strip-components=1 -xzf $(DL_DIR)/$(PKG_SOURCE)
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 
 include $(INCLUDE_DIR)/package.mk
 include ../python3-package.mk
@@ -26,15 +25,16 @@ define Package/python3-markupsafe
   SECTION:=lang
   CATEGORY:=Languages
   SUBMENU:=Python
-  URL:=https://github.com/pallets/markupsafe/
-  TITLE:=python3-markupsafe
+  TITLE:=MarkupSafe
+  URL:=https://palletsprojects.com/p/markupsafe/
   DEPENDS:=+python3-light
   VARIANT:=python3
 endef
 
 define Package/python3-markupsafe/description
-MarkupSafe implements a XML/HTML/XHTML Markup safe string for Python
+  MarkupSafe implements a text object that escapes characters so it is safe to use in HTML and XML.
 endef
 
 $(eval $(call Py3Package,python3-markupsafe))
 $(eval $(call BuildPackage,python3-markupsafe))
+$(eval $(call BuildPackage,python3-markupsafe-src))
index d351aa4b95611dfe5f4b5bdea2f66238e9d57a15..dfb669b38ad0e9031249e73846903af0b7d8cec2 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-egenix-mx-base
 PKG_VERSION:=3.2.9
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=egenix-mx-base-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://downloads.egenix.com/python
@@ -17,19 +17,20 @@ PKG_HASH:=1c6b67688e7a231c6c1da09b7a6a2210745c3f2507bdda70e2639faedbf68977
 PKG_BUILD_DIR:=$(BUILD_DIR)/egenix-mx-base-$(PKG_VERSION)
 
 PKG_MAINTAINER:=Dmitry Trefilov <the-alien@live.ru>
-PKG_LICENSE:=eGenix.com
+PKG_LICENSE:=eGenix
 PKG_LICENSE_FILES:=LICENSE COPYRIGHT
 
 include $(INCLUDE_DIR)/package.mk
 include ../python-package.mk
 
 define Package/python-egenix-mx-base
-  SUBMENU:=Python
   SECTION:=lang
   CATEGORY:=Languages
-  DEPENDS:=+python
   TITLE:=Egenix mxBase
+  SUBMENU:=Python
   URL:=https://www.egenix.com/products/python/mxBase/
+  DEPENDS:=+python-light
+  VARIANT:=python
 endef
 
 define Package/python-egenix-mx-base/description
@@ -39,16 +40,8 @@ define Package/python-egenix-mx-base/description
  date/time processing and high speed data types.
 endef
 
-define Build/Compile
-       $(call Build/Compile/PyMod,,install --prefix="$(PKG_INSTALL_DIR)/usr")
-endef
-
-define PyPackage/python-egenix-mx-base/install
-       $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR)
-       $(CP) \
-           $(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \
-           $(1)$(PYTHON_PKG_DIR)
-endef
+PYTHON_PKG_SETUP_ARGS:=
 
 $(eval $(call PyPackage,python-egenix-mx-base))
 $(eval $(call BuildPackage,python-egenix-mx-base))
+$(eval $(call BuildPackage,python-egenix-mx-base-src))
index d42d08e6f4d13bd14d895552da389de59347bda3..b78253e3f88edf621facaee16c3597e4acc830d2 100644 (file)
@@ -42,7 +42,7 @@ define Package/libelektra/Default
   CATEGORY:=Libraries
   TITLE:=Elektra
   URL:=http://www.libelektra.org/
-  SUBMENU:=libelektra
+  SUBMENU:=LibElektra
 endef
 
 define Package/libelektra/Default-description
index 52e7133366b41a590800e1594f3388527a085aac..ec064986c1b25a0b39cfe75f3159b514519eff90 100644 (file)
@@ -6,20 +6,19 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=expat
-PKG_VERSION:=2.2.6
+PKG_VERSION:=2.2.7
 PKG_RELEASE:=1
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@SF/expat
-PKG_HASH:=17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2
-PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>, \
-               Ted Hess <thess@kitschensync.net>
+PKG_HASH:=30e3f40acf9a8fdbd5c379bdcc8d1178a1d9af306de29fc8ece922bc4c57bef8
 
+PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=COPYING
+PKG_CPE_ID:=cpe:/a:libexpat:expat
 
 PKG_FIXUP:=autoreconf
-
 PKG_INSTALL:=1
 PKG_BUILD_PARALLEL:=1
 
index 89d7a39c12fbacba68ca5258bafbacbd405361c0..93952271ad231168125195ce6304dccf7e95db06 100644 (file)
@@ -7,19 +7,24 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=intltool
 PKG_VERSION:=0.51.0
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://launchpad.net/intltool/trunk/$(PKG_VERSION)/+download
 PKG_HASH:=67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd
 PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
 
+
+HOST_BUILD_DEPENDS:=perl/host
 PKG_HOST_ONLY:=1
 HOST_FIXUP:=autoreconf
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
 
+HOST_CONFIGURE_VARS+= \
+        PATH=$(STAGING_DIR_HOSTPKG)/bin:$(STAGING_DIR_HOSTPKG)/usr/bin:$(PATH)
+
 define Package/intltool
   SECTION:=libs
   CATEGORY:=Libraries
index 795bf2a56008d9f0338041bdf52729607abcce5d..b31989e4a53b06bc210dacb462cb6ea6bfcdfb7c 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libxslt
 PKG_VERSION:=1.1.33
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:= \
diff --git a/libs/libxslt/patches/101-fix-cve-2019-13117.patch b/libs/libxslt/patches/101-fix-cve-2019-13117.patch
new file mode 100644 (file)
index 0000000..78ebb90
--- /dev/null
@@ -0,0 +1,29 @@
+From c5eb6cf3aba0af048596106ed839b4ae17ecbcb1 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Sat, 27 Apr 2019 11:19:48 +0200
+Subject: [PATCH] Fix uninitialized read of xsl:number token
+
+Found by OSS-Fuzz.
+---
+ libxslt/numbers.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/libxslt/numbers.c b/libxslt/numbers.c
+index 89e1f668..75c31eba 100644
+--- a/libxslt/numbers.c
++++ b/libxslt/numbers.c
+@@ -382,7 +382,10 @@ xsltNumberFormatTokenize(const xmlChar *format,
+               tokens->tokens[tokens->nTokens].token = val - 1;
+               ix += len;
+               val = xmlStringCurrentChar(NULL, format+ix, &len);
+-          }
++          } else {
++                tokens->tokens[tokens->nTokens].token = (xmlChar)'0';
++                tokens->tokens[tokens->nTokens].width = 1;
++            }
+       } else if ( (val == (xmlChar)'A') ||
+                   (val == (xmlChar)'a') ||
+                   (val == (xmlChar)'I') ||
+-- 
+2.21.0
+
diff --git a/libs/libxslt/patches/102-fix-cve-2019-13118.patch b/libs/libxslt/patches/102-fix-cve-2019-13118.patch
new file mode 100644 (file)
index 0000000..b377f4b
--- /dev/null
@@ -0,0 +1,71 @@
+From 6ce8de69330783977dd14f6569419489875fb71b Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Mon, 3 Jun 2019 13:14:45 +0200
+Subject: [PATCH] Fix uninitialized read with UTF-8 grouping chars
+
+The character type in xsltFormatNumberConversion was too narrow and
+an invalid character/length combination could be passed to
+xsltNumberFormatDecimal, resulting in an uninitialized read.
+
+Found by OSS-Fuzz.
+---
+ libxslt/numbers.c         | 5 +++--
+ tests/docs/bug-222.xml    | 1 +
+ tests/general/bug-222.out | 2 ++
+ tests/general/bug-222.xsl | 6 ++++++
+ 4 files changed, 12 insertions(+), 2 deletions(-)
+ create mode 100644 tests/docs/bug-222.xml
+ create mode 100644 tests/general/bug-222.out
+ create mode 100644 tests/general/bug-222.xsl
+
+diff --git a/libxslt/numbers.c b/libxslt/numbers.c
+index f1ed8846..20b99d5a 100644
+--- a/libxslt/numbers.c
++++ b/libxslt/numbers.c
+@@ -1298,13 +1298,14 @@ OUTPUT_NUMBER:
+     number = floor((scale * number + 0.5)) / scale;
+     if ((self->grouping != NULL) &&
+         (self->grouping[0] != 0)) {
++        int gchar;
+       len = xmlStrlen(self->grouping);
+-      pchar = xsltGetUTF8Char(self->grouping, &len);
++      gchar = xsltGetUTF8Char(self->grouping, &len);
+       xsltNumberFormatDecimal(buffer, floor(number), self->zeroDigit[0],
+                               format_info.integer_digits,
+                               format_info.group,
+-                              pchar, len);
++                              gchar, len);
+     } else
+       xsltNumberFormatDecimal(buffer, floor(number), self->zeroDigit[0],
+                               format_info.integer_digits,
+diff --git a/tests/docs/bug-222.xml b/tests/docs/bug-222.xml
+new file mode 100644
+index 00000000..69d62f2c
+--- /dev/null
++++ b/tests/docs/bug-222.xml
+@@ -0,0 +1 @@
++<doc/>
+diff --git a/tests/general/bug-222.out b/tests/general/bug-222.out
+new file mode 100644
+index 00000000..e3139698
+--- /dev/null
++++ b/tests/general/bug-222.out
+@@ -0,0 +1,2 @@
++<?xml version="1.0"?>
++1⠢0
+diff --git a/tests/general/bug-222.xsl b/tests/general/bug-222.xsl
+new file mode 100644
+index 00000000..e32dc473
+--- /dev/null
++++ b/tests/general/bug-222.xsl
+@@ -0,0 +1,6 @@
++<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
++  <xsl:decimal-format name="f" grouping-separator="⠢"/>
++  <xsl:template match="/">
++    <xsl:value-of select="format-number(10,'#⠢0','f')"/>
++  </xsl:template>
++</xsl:stylesheet>
+-- 
+2.21.0
+
diff --git a/libs/lmdb/Makefile b/libs/lmdb/Makefile
new file mode 100644 (file)
index 0000000..0e1fc0d
--- /dev/null
@@ -0,0 +1,97 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=lmdb
+PKG_VERSION:=0.9.23
+PKG_RELEASE:=1
+
+PKG_SOURCE:=LMDB_$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/LMDB/lmdb/tar.gz/LMDB_$(PKG_VERSION)?
+PKG_HASH:=abf42e91f046787ed642d9eb21812a5c473f3ba5854124484d16eadbe0aa9c81
+PKG_BUILD_DIR:=$(BUILD_DIR)/lmdb-LMDB_$(PKG_VERSION)
+
+PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec@nic.cz>
+PKG_LICENSE:=OLDAP-2.8
+PKG_LICENSE_FILES:=LICENSE
+
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+MAKE_PATH:=libraries/liblmdb
+
+define Package/lmdb/Default
+  SECTION:=libs
+  CATEGORY:=Libraries
+  TITLE:=Lightning Memory-Mapped Database
+  URL:=https://symas.com/lmdb/
+endef
+
+define Package/lmdb
+       $(call Package/lmdb/Default)
+  TITLE+= shared library
+endef
+
+define Package/lmdb/description
+  LMDB is an ultra-fast, ultra-compact key-value
+  embedded data store developed for the OpenLDAP Project.
+endef
+
+define Package/lmdb-utils
+       $(call Package/lmdb/Default)
+  TITLE+= utils
+  MDEPENDS+= lmdb
+endef
+
+define Package/lmdb-utils/description
+  LMDB environment status and copy tool
+endef
+
+define Package/lmdb-test
+       $(call Package/lmdb/Default)
+  TITLE+= test
+  MDEPENDS+= lmdb
+endef
+
+define Package/lmdb-test/description
+  LMDB test application
+endef
+
+define Build/Prepare
+       $(call Build/Prepare/Default)
+       $(SED) 's,%%PKG_VERSION%%,$(PKG_VERSION),g' $(PKG_BUILD_DIR)/liblmdb.pc
+endef
+
+define Build/Compile
+       $(MAKE) -C "$(PKG_BUILD_DIR)/$(MAKE_PATH)/" \
+               CC="$(TARGET_CC)" \
+               CFLAGS+="$(TARGET_CFLAGS)" \
+               LDFLAGS+="$(TARGET_LDFLAGS)" \
+               FPIC="$(FPIC)"
+endef
+
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)/usr/include
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_BUILD_DIR)/$(MAKE_PATH)/lmdb.h $(1)/usr/include
+       $(CP) $(PKG_BUILD_DIR)/$(MAKE_PATH)/liblmdb.{a,so} $(1)/usr/lib
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig/
+       $(CP) $(PKG_BUILD_DIR)/liblmdb.pc $(1)/usr/lib/pkgconfig/lmdb.pc
+endef
+
+define Package/lmdb/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/local/lib/*.so $(1)/usr/lib
+endef
+
+define Package/lmdb-utils/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/local/bin/mdb_{stat,copy,dump,load} $(1)/usr/bin
+endef
+
+define Package/lmdb-test/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(MAKE_PATH)/mtest $(1)/usr/bin
+endef
+
+$(eval $(call BuildPackage,lmdb))
+$(eval $(call BuildPackage,lmdb-utils))
+$(eval $(call BuildPackage,lmdb-test))
diff --git a/libs/lmdb/patches/010-fix-makefile.patch b/libs/lmdb/patches/010-fix-makefile.patch
new file mode 100644 (file)
index 0000000..23a30fa
--- /dev/null
@@ -0,0 +1,23 @@
+--- a/libraries/liblmdb/Makefile
++++ b/libraries/liblmdb/Makefile
+@@ -34,6 +34,7 @@ libdir = $(exec_prefix)/lib
+ includedir = $(prefix)/include
+ datarootdir = $(prefix)/share
+ mandir = $(datarootdir)/man
++FPIC ?= -fPIC
+
+ ########################################################################
+
+@@ -86,10 +87,10 @@ midl.o: midl.c midl.h
+       $(CC) $(CFLAGS) $(CPPFLAGS) -c midl.c
+
+ mdb.lo: mdb.c lmdb.h midl.h
+-      $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) -c mdb.c -o $@
++      $(CC) $(CFLAGS) $(FPIC) $(CPPFLAGS) -c mdb.c -o $@
+
+ midl.lo: midl.c midl.h
+-      $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) -c midl.c -o $@
++      $(CC) $(CFLAGS) $(FPIC) $(CPPFLAGS) -c midl.c -o $@
+
+ %:    %.o
+       $(CC) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@
diff --git a/libs/lmdb/src/liblmdb.pc b/libs/lmdb/src/liblmdb.pc
new file mode 100644 (file)
index 0000000..d6fcaf6
--- /dev/null
@@ -0,0 +1,12 @@
+prefix=/usr
+exec_prefix=/usr
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+
+Name: Lightning Memory-Mapped Database
+Description: Lightning Memory-Mapped Database
+Version: %%PKG_VERSION%%
+Requires:
+Libs: -L${libdir} -llmdb
+Cflags: -I${includedir}
index 8d1cc09b1c063cdcd25d1544d285892811db4345..3dd7c728ee9c44aad2a04932d351ffb83375c1bf 100644 (file)
@@ -23,6 +23,8 @@ PKG_FIXUP:=autoreconf
 
 PKG_INSTALL:=1
 
+PKG_CONFIG_DEPENDS := CONFIG_PACKAGE_libpcrecpp
+
 include $(INCLUDE_DIR)/uclibc++.mk
 include $(INCLUDE_DIR)/package.mk
 
@@ -30,7 +32,6 @@ define Package/libpcre/default
   SECTION:=libs
   CATEGORY:=Libraries
   URL:=https://www.pcre.org/
-  DEPENDS:=$(CXX_DEPENDS)
 endef
 
 define Package/libpcre
@@ -46,7 +47,7 @@ endef
 define Package/libpcrecpp
   $(call Package/libpcre/default)
   TITLE:=C++ wrapper for Perl Compatible Regular Expression library
-  DEPENDS:=+libpcre
+  DEPENDS:=+libpcre $(CXX_DEPENDS)
 endef
 
 TARGET_CFLAGS += $(FPIC)
@@ -56,8 +57,7 @@ CONFIGURE_ARGS += \
        --enable-unicode-properties \
        --enable-pcre16 \
        --with-match-limit-recursion=16000 \
-       --enable-cpp
-
+       $(if $(CONFIG_PACKAGE_libpcrecpp),--enable,--disable)-cpp
 
 MAKE_FLAGS += \
        CFLAGS="$(TARGET_CFLAGS)"
index 62224d5330d15955ebd93919982e16ab4a945833..8d294fa74e37f802f3c8416a0852a721d529aa29 100644 (file)
@@ -33,7 +33,7 @@ define Package/libpq
   DEPENDS:=+libpthread
   TITLE:=PostgreSQL client library
   URL:=http://www.postgresql.org/
-  SUBMENU:=database
+  SUBMENU:=Database
 endef
 
 define Package/libpq/description
@@ -46,7 +46,7 @@ define Package/pgsql-cli
   DEPENDS:=+libncursesw +libpq +libreadline +librt +zlib
   TITLE:=Command Line Interface (CLI) to PostgreSQL databases
   URL:=http://www.postgresql.org/
-  SUBMENU:=database
+  SUBMENU:=Database
 endef
 
 define Package/pgsql-cli/description
@@ -59,7 +59,7 @@ define Package/pgsql-cli-extra
   DEPENDS:=+libncursesw +libpq +libreadline +librt +zlib
   TITLE:=Command Line extras for PostgreSQL databases
   URL:=http://www.postgresql.org/
-  SUBMENU:=database
+  SUBMENU:=Database
 endef
 
 define Package/pgsql-cli-extra/description
@@ -72,7 +72,7 @@ define Package/pgsql-server
   DEPENDS:=+pgsql-cli
   TITLE:=PostgreSQL databases Server
   URL:=http://www.postgresql.org/
-  SUBMENU:=database
+  SUBMENU:=Database
   USERID:=postgres=5432:postgres=5432
 endef
 
index 2dd743b5b1dd4ea10562662006321246a63f7547..1b6e24f75755bb13c6267b4946ff4df29fd14d87 100644 (file)
@@ -27,7 +27,7 @@ CONFIGURE_ARGS += \
        --with-libpq=$(STAGING_DIR)/usr
 
 define Package/psqlodbc/Default
-  SUBMENU:=database
+  SUBMENU:=Database
   URL:=https://odbc.postgresql.org/
   SECTION:=libs
   CATEGORY:=Libraries
index 1c32197e4523bf6aa6a01f1d4a24f905f7c72550..059aff2a8d271f5b0d3dad4916336bed09cdd13d 100644 (file)
@@ -42,7 +42,7 @@ PKG_CONFIG_DEPENDS := \
 include $(INCLUDE_DIR)/package.mk
 
 define Package/sqlite3/Default
-  SUBMENU:=database
+  SUBMENU:=Database
   TITLE:=SQLite (v3.x) database engine
   URL:=http://www.sqlite.org/
   MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
index 12558de0754d31834828b3930138a1f3998c630d..107d521d40946858ff4008babf870aa80106c70d 100644 (file)
@@ -25,7 +25,7 @@ include $(INCLUDE_DIR)/kernel.mk
 include $(INCLUDE_DIR)/version.mk
 
 define Package/tdb
-  SUBMENU:=database
+  SUBMENU:=Database
   SECTION:=libs
   CATEGORY:=Libraries
   TITLE:=Trivial Database
index efbe1a9fee5e4b189e70284780718119faea5b7b..5b6325d31e9f032741793c63af7b684c698b42d2 100644 (file)
@@ -39,7 +39,7 @@ CONFIGURE_ARGS += \
        --includedir=$(STAGING_DIR)/usr/include
 
 define Package/unixodbc/Default
-  SUBMENU:=database
+  SUBMENU:=Database
   TITLE:=unixODBC
   URL:=http://www.unixodbc.org
 endef
index 2d21be000ffdc583339b54db3ec731225568239a..3ac17529b542c3160ac4da0887ea2415469bd29c 100644 (file)
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=zeromq
-PKG_VERSION:=4.1.6
-PKG_RELEASE:=2
+PKG_VERSION:=4.1.7
+PKG_RELEASE:=1
 PKG_MAINTAINER:=Dirk Chang <dirk@kooiot.com>
 PKG_LICENSE:=GPL-3.0+
 PKG_LICENSE_FILES:=LICENCE.txt
 
+PKG_CPE_ID:=cpe:/a:zeromq:libzmq
+
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/zeromq/zeromq4-1/releases/download/v$(PKG_VERSION)
-PKG_HASH:=02ebf60a43011e770799336365bcbce2eb85569e9b5f52aa0d8cc04672438a0a
+PKG_HASH:=31c383cfcd3be1dc8a66e448c403029e793687e70473b89c4cc0bd626e7da299
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
 
index eaf0f81e6e4c97c52f5239b888494438a467b6db..ded120fa34e3b7c982571f2c04ea6ebe9fa943d4 100644 (file)
@@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=opendkim
 PKG_VERSION:=2.10.3
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@SF/$(PKG_NAME)
diff --git a/mail/opendkim/patches/020-uclibc.patch b/mail/opendkim/patches/020-uclibc.patch
new file mode 100644 (file)
index 0000000..b74c3a9
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/libopendkim/dkim-dns.c
++++ b/libopendkim/dkim-dns.c
+@@ -163,6 +163,9 @@ int
+ dkim_res_query(void *srv, int type, unsigned char *query, unsigned char *buf,
+                size_t buflen, void **qh)
+ {
++#ifdef __UCLIBC__
++      return DKIM_DNS_ERROR;
++#else
+       int n;
+       int ret;
+       struct dkim_res_qh *rq;
+@@ -209,6 +212,7 @@ dkim_res_query(void *srv, int type, unsigned char *query, unsigned char *buf,
+       *qh = (void *) rq;
+       return DKIM_DNS_SUCCESS;
++#endif // __UCLIBC__
+ }
+ /*
index c4f5d8dab5b73b7dacf958bbb6ecc86f149714d8..a7dcf101220bd64a72f1480465fdb34366fb8644 100644 (file)
@@ -49,7 +49,7 @@ define Package/aircrack-ng
   DEPENDS += +libnl-core +libnl-genl +zlib
   TITLE:=WLAN tools (without airmon-ng) for breaking 802.11 WEP/WPA keys
   URL:=https://www.aircrack-ng.org/
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
 endef
 
 define Package/aircrack-ng/description
@@ -66,7 +66,7 @@ define Package/airmon-ng
   DEPENDS:=+wireless-tools +ethtool +procps-ng +CONFIG_PCI_SUPPORT:pciutils +CONFIG_USB_SUPPORT:usbutils
   TITLE:=Bash script designed to turn wireless cards into monitor mode.
   URL:=http://www.aircrack-ng.org/
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
 endef
 
 define Package/airmon-ng/description
index b04ab3c1fc40edbb3dbb53358542fc9a67db92ef..1a8eeb4ea7afe90ecaa8e03235c2284131cb27df 100644 (file)
@@ -1,7 +1,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cifsd-tools
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/cifsd-team/cifsd-tools.git
@@ -13,9 +13,10 @@ PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
 PKG_LICENSE:=GPL-2.0-or-later
 PKG_LICENSE_FILES:=COPYING
 
-PKG_INSTALL:=1
 PKG_FIXUP:=autoreconf
-PKG_REMOVE_FILES:=autogen.sh aclocal.m4
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+PKG_REMOVE_FILES:=autogen.sh
 
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/nls.mk
@@ -50,9 +51,9 @@ endef
 
 define Package/cifsd-tools/conffiles
 /etc/config/cifsd
-/etc/cifs/smb.conf.template 
+/etc/cifs/smb.conf.template
 /etc/cifs/smb.conf
 /etc/cifs/cifsdpwd.db
-endef 
+endef
 
 $(eval $(call BuildPackage,cifsd-tools))
index 44690850ffa172ec32edd95215eda6b0b6da73f5..e2ea0c500815c52bb49f095432b9cc9979c7fe50 100644 (file)
@@ -10,7 +10,8 @@ smb_header()
        config_get CIFSD_IFACE $1 interface "lan"
 
        # resolve interfaces
-       local interfaces=$(
+       local interfaces
+       interfaces=$(
                . /lib/functions/network.sh
 
                local net
@@ -23,7 +24,8 @@ smb_header()
        )
 
        local workgroup description
-       local hostname="$(cat /proc/sys/kernel/hostname)"
+       local hostname
+       hostname="$(cat /proc/sys/kernel/hostname)"
 
        config_get workgroup            $1 workgroup    "WORKGROUP"
        config_get description          $1 description  "Cifsd on OpenWrt"
@@ -35,7 +37,7 @@ smb_header()
            /etc/cifs/smb.conf.template > /var/etc/cifs/smb.conf
 
        [ -e /etc/cifs/smb.conf ] || ln -nsf /var/etc/cifs/smb.conf /etc/cifs/smb.conf
-       
+
        if [ ! -L /etc/cifs/smb.conf ]; then
                logger -t 'cifsd' "Local custom /etc/cifs/smb.conf file detected, all UCI/Luci config settings are ignored!"
        fi
@@ -75,31 +77,33 @@ smb_add_share()
        config_get_bool hide_dot_files  $1 hide_dot_files       0
        config_get veto_files $1 veto_files
 
-       [ -z "$name" -o -z "$path" ] && return
+       [ -z "$name" ] || [ -z "$path" ] && return
 
-       echo -e "\n[$name]\n\tpath = $path" >> /var/etc/cifs/smb.conf
-       [ -n "$comment" ] && echo -e "\tcomment = $comment" >> /var/etc/cifs/smb.conf
-       
-       if [ "$force_root" -eq 1 ]; then
-               echo -e "\tforce user = root" >> /var/etc/cifs/smb.conf
-               echo -e "\tforce group = root" >> /var/etc/cifs/smb.conf
-       else
-               [ -n "$users" ] && echo -e "\tvalid users = $users" >> /var/etc/cifs/smb.conf
-       fi
+       {
+               printf "\n[%s]\n\tpath = %s\n" "$name" "$path"
+               [ -n "$comment" ] && printf "\tcomment = %s\n" "$comment"
+
+               if [ "$force_root" -eq 1 ]; then
+                       printf "\tforce user = %s\n" "root"
+                       printf "\tforce group = %s\n" "root"
+               else
+                       [ -n "$users" ] && printf "\tvalid users = %s\n" "$users"
+               fi
 
-       [ -n "$create_mask" ] && echo -e "\tcreate mask = $create_mask" >> /var/etc/cifs/smb.conf
-       [ -n "$dir_mask" ] && echo -e "\tdirectory mask = $dir_mask" >> /var/etc/cifs/smb.conf
+               [ -n "$create_mask" ] && printf "\tcreate mask = %s\n" "$create_mask"
+               [ -n "$dir_mask" ] && printf "\tdirectory mask = %s\n" "$dir_mask"
 
-       [ -n "$browseable" ] && echo -e "\tbrowseable = $browseable" >> /var/etc/cifs/smb.conf
-       [ -n "$read_only" ] && echo -e "\tread only = $read_only" >> /var/etc/cifs/smb.conf
-       [ -n "$writeable" ] && echo -e "\twriteable = $writeable" >> /var/etc/cifs/smb.conf
-       [ -n "$guest_ok" ] && echo -e "\tguest ok = $guest_ok" >> /var/etc/cifs/smb.conf
+               [ -n "$browseable" ] && printf "\tbrowseable = %s\n" "$browseable"
+               [ -n "$read_only" ] && printf "\tread only = %s\n" "$read_only"
+               [ -n "$writeable" ] && printf "\twriteable = %s\n" "$writeable"
+               [ -n "$guest_ok" ] && printf "\tguest ok = %s\n" "$guest_ok"
 
-       [ -n "$write_list" ] && echo -e "\twrite list = $write_list" >> /var/etc/cifs/smb.conf
-       [ -n "$read_list" ] && echo -e "\tread list = $read_list" >> /var/etc/cifs/smb.conf
+               [ -n "$write_list" ] && printf "\twrite list = %s\n" "$write_list"
+               [ -n "$read_list" ] && printf "\tread list = %s\n" "$read_list"
 
-       [ "$hide_dot_files" -eq 1 ] && echo -e "\thide dot files = yes" >> /var/etc/cifs/smb.conf
-       [ -n "$veto_files" ] && echo -e "\tveto files = $veto_files" >> /var/etc/cifs/smb.conf
+               [ "$hide_dot_files" -eq 1 ] && printf "\thide dot files = %s\n" "yes"
+               [ -n "$veto_files" ] && printf "\tveto files = %s\n" "$veto_files"
+       } >> /var/etc/cifs/smb.conf
 }
 
 init_config()
@@ -117,9 +121,9 @@ init_config()
 service_triggers()
 {
        PROCD_RELOAD_DELAY=2000
-       
+
        procd_add_reload_trigger "dhcp" "system" "cifsd"
-       
+
        local i
        for i in $CIFSD_IFACE; do
                procd_add_reload_interface_trigger $i
@@ -129,21 +133,20 @@ service_triggers()
 start_service()
 {
        init_config
-       
+
        if [ ! -e /etc/cifs/smb.conf ]; then
                logger -t 'cifsd' "missing config /etc/cifs/smb.conf, needs to-be created manually!"
                exit 1
        fi
 
        [ -f /tmp/cifsd.lock ] && rm /tmp/cifsd.lock
-       
+
        # try remove again before start
-       if (lsmod | grep cifsd &>/dev/null); then
-               rmmod cifsd &>/dev/null
-       fi
-       modprobe cifsd 2>/dev/null
-       if ! (lsmod | grep cifsd &>/dev/null); then
-               logger -t 'cifsd' "modprobe of cifsd module failed, cant start cifsd!"
+       [ -e /sys/module/cifsd ] && rmmod cifsd > /dev/null 2>&1
+
+       modprobe cifsd 2> /dev/null
+       if [ ! -e /sys/module/cifsd ]; then
+               logger -t 'cifsd' "modprobe of cifsd module failed, can\'t start cifsd!"
                exit 1
        fi
 
index e724874795f3eb1135a228d524d6c5c0bff913df..feb68888f0bb1339e33320a35a5315974b16a0f7 100644 (file)
@@ -18,7 +18,7 @@ include $(INCLUDE_DIR)/package.mk
 define Package/dynapoint
     SECTION:=net
     CATEGORY:=Network
-    SUBMENU:=wireless
+    SUBMENU:=Wireless
     DEPENDS:=+lua +libubus-lua +libuci-lua +libubox-lua +luci-lib-nixio
     TITLE:=Dynamic access point manager
     PKGARCH:=all
index 4e2bcd5f96240aafef1e8e5741c06c768c7ca9fb..2626b6921f9a4be37092792b9d76ef3a7473e894 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fastd
 PKG_VERSION:=18
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_MAINTAINER:=Matthias Schiffer <mschiffer@universe-factory.net>
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
diff --git a/net/fastd/patches/0001-resolve-fix-segmentation-fault-with-musl-1.1.20.patch b/net/fastd/patches/0001-resolve-fix-segmentation-fault-with-musl-1.1.20.patch
new file mode 100644 (file)
index 0000000..52c1917
--- /dev/null
@@ -0,0 +1,35 @@
+From 9710132c04cd378bd36f16a2a3d98d9c4c5fdbac Mon Sep 17 00:00:00 2001
+From: David Bauer <mail@david-bauer.net>
+Date: Thu, 25 Jul 2019 18:51:25 +0200
+Subject: [PATCH] resolve: fix segmentation fault with musl >1.1.20
+
+When compiled with musl >1.1.20, fastd will crash in case it can't
+resolve a peers hostname. This is due to a changed implementation of
+freeaddrinfo in musl 1.1.21 onwards.
+
+This segfault is fixed by not calling freeaddrinfo in case the supplied
+pointer is null.
+
+Signed-off-by: David Bauer <mail@david-bauer.net>
+---
+ src/resolve.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/resolve.c b/src/resolve.c
+index 9bdfa1c..bfd2a59 100644
+--- a/src/resolve.c
++++ b/src/resolve.c
+@@ -104,7 +104,9 @@ static void * resolve_peer(void *varg) {
+       fastd_async_enqueue(ASYNC_TYPE_RESOLVE_RETURN, ret, sizeof(fastd_async_resolve_return_t) + n_addr*sizeof(fastd_peer_address_t));
+-      freeaddrinfo(res);
++      if (res)
++              freeaddrinfo(res);
++
+       free(arg->hostname);
+       free(arg);
+-- 
+2.20.1
+
index b0a691e020f160cae953b46a09cd4ec892f46819..0c6cb0739e855a8effa0e91c9854e3c717487597 100644 (file)
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=haproxy
-PKG_VERSION:=2.0.1
+PKG_VERSION:=2.0.3
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://www.haproxy.org/download/2.0/src
-PKG_HASH:=9975c475ba6f19aac4b665d8705f7b9f7911df7fc316ba7b9efd6fe263181eb1
+PKG_HASH:=aac1ff3e5079997985b6560f46bf265447d0cd841f11c4d77f15942c9fe4b770
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
 
 PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>, \
index 1e548c6c20e06b3db0aaea9edf12c7d5d307a733..2e2402b66f5a2d0869a08bd8910cce8552d36eef 100755 (executable)
@@ -1,7 +1,7 @@
-#!/bin/bash
+#!/bin/sh
 
-CLONEURL=http://git.haproxy.org/git/haproxy-2.0.git
-BASE_TAG=v2.0.1
+CLONEURL=https://git.haproxy.org/git/haproxy-2.0.git
+BASE_TAG=v2.0.3
 TMP_REPODIR=tmprepo
 PATCHESDIR=patches
 
@@ -15,10 +15,10 @@ find ${PATCHESDIR} -type f -name "*.patch" -exec rm -f "{}" \;
 i=0
 for cid in $(git -C "${TMP_REPODIR}" rev-list ${BASE_TAG}..HEAD | tac); do
        filename="$(printf "%03d" $i)-$(git -C "${TMP_REPODIR}" log --format=%s -n 1 $cid | sed -e"s/[()']//g" -e's/[^_a-zA-Z0-9+-]\+/-/g' -e's/-$//').patch"
-       printf "Creating ${filename}\n"
-       git -C "${TMP_REPODIR}" show $cid > "${PATCHESDIR}/$filename"
+       printf "Creating %s\n" "${filename}"
+       git -C "${TMP_REPODIR}" show "$cid" > "${PATCHESDIR}/$filename"
        git add "${PATCHESDIR}/$filename"
-       let i++
+       i=$((i+1))
 done
 
 rm -rf "${TMP_REPODIR}"
diff --git a/net/haproxy/patches/000-BUG-MINOR-mworker-cli-dont-output-a-n-before-the-response.patch b/net/haproxy/patches/000-BUG-MINOR-mworker-cli-dont-output-a-n-before-the-response.patch
deleted file mode 100644 (file)
index 36fb3e8..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-commit 1bd140ea3fab97ccd37adf9d0c106d52af9e53fa
-Author: William Lallemand <wlallemand@haproxy.com>
-Date:   Mon Jul 1 10:56:15 2019 +0200
-
-    BUG/MINOR: mworker/cli: don't output a \n before the response
-    
-    When using a level lower than admin on the master CLI, a \n is output
-    before the response, this is caused by the response of the "operator" or
-    "user" that are sent before the actual command.
-    
-    To fix this problem we introduce the flag APPCTX_CLI_ST1_NOLF which ask
-    a command response to not be followed by the final \n.
-    This patch made a special case with the command operator and user
-    followed by a - so they are not followed by \n.
-    
-    This patch must be backported to 2.0 and 1.9.
-    
-    (cherry picked from commit ad03288e6b28d816abb443cf8c6d984a72bb91a6)
-    Signed-off-by: William Lallemand <wlallemand@haproxy.org>
-
-diff --git a/include/types/applet.h b/include/types/applet.h
-index c9e02d17..1f3a4983 100644
---- a/include/types/applet.h
-+++ b/include/types/applet.h
-@@ -50,6 +50,7 @@ struct applet {
- #define APPCTX_CLI_ST1_PROMPT  (1 << 0)
- #define APPCTX_CLI_ST1_PAYLOAD (1 << 1)
-+#define APPCTX_CLI_ST1_NOLF    (1 << 2)
- /* Context of a running applet. */
- struct appctx {
-diff --git a/src/cli.c b/src/cli.c
-index 44ddc7bf..9a9f80f9 100644
---- a/src/cli.c
-+++ b/src/cli.c
-@@ -821,7 +821,7 @@ static void cli_io_handler(struct appctx *appctx)
-                                               prompt = "\n> ";
-                               }
-                               else {
--                                      if (!(appctx->st1 & APPCTX_CLI_ST1_PAYLOAD))
-+                                      if (!(appctx->st1 & (APPCTX_CLI_ST1_PAYLOAD|APPCTX_CLI_ST1_NOLF)))
-                                               prompt = "\n";
-                               }
-@@ -848,6 +848,8 @@ static void cli_io_handler(struct appctx *appctx)
-                       /* switch state back to GETREQ to read next requests */
-                       appctx->st0 = CLI_ST_GETREQ;
-+                      /* reactivate the \n at the end of the response for the next command */
-+                      appctx->st1 &= ~APPCTX_CLI_ST1_NOLF;
-               }
-       }
-@@ -1442,6 +1444,10 @@ static int cli_parse_show_lvl(char **args, char *payload, struct appctx *appctx,
- /* parse and set the CLI level dynamically */
- static int cli_parse_set_lvl(char **args, char *payload, struct appctx *appctx, void *private)
- {
-+      /* this will ask the applet to not output a \n after the command */
-+      if (!strcmp(args[1], "-"))
-+          appctx->st1 |= APPCTX_CLI_ST1_NOLF;
-+
-       if (!strcmp(args[0], "operator")) {
-               if (!cli_has_level(appctx, ACCESS_LVL_OPER)) {
-                       return 1;
-@@ -2097,11 +2103,11 @@ int pcli_parse_request(struct stream *s, struct channel *req, char **errmsg, int
-               if (pcli_has_level(s, ACCESS_LVL_ADMIN)) {
-                       goto end;
-               } else if (pcli_has_level(s, ACCESS_LVL_OPER)) {
--                      ci_insert_line2(req, 0, "operator", strlen("operator"));
--                      ret += strlen("operator") + 2;
-+                      ci_insert_line2(req, 0, "operator -", strlen("operator -"));
-+                      ret += strlen("operator -") + 2;
-               } else if (pcli_has_level(s, ACCESS_LVL_USER)) {
--                      ci_insert_line2(req, 0, "user", strlen("user"));
--                      ret += strlen("user") + 2;
-+                      ci_insert_line2(req, 0, "user -", strlen("user -"));
-+                      ret += strlen("user -") + 2;
-               }
-       }
- end:
diff --git a/net/haproxy/patches/000-OPENWRT-add-uclibc-support.patch b/net/haproxy/patches/000-OPENWRT-add-uclibc-support.patch
new file mode 100644 (file)
index 0000000..2757025
--- /dev/null
@@ -0,0 +1,18 @@
+--- a/Makefile
++++ b/Makefile
+@@ -327,6 +327,15 @@ ifeq ($(TARGET),linux-glibc)
+     USE_GETADDRINFO)
+ endif
++# For linux >= 2.6.28 and uclibc
++ifeq ($(TARGET),linux-uclibc)
++  set_target_defaults = $(call default_opts, \
++    USE_POLL USE_TPROXY USE_DL USE_RT USE_NETFILTER                           \
++    USE_CPU_AFFINITY USE_THREAD USE_EPOLL USE_FUTEX USE_LINUX_TPROXY          \
++    USE_ACCEPT4 USE_LINUX_SPLICE USE_PRCTL USE_THREAD_DUMP USE_NS USE_TFO     \
++    USE_GETADDRINFO)
++endif
++
+ # Solaris 8 and above
+ ifeq ($(TARGET),solaris)
+   # We also enable getaddrinfo() which works since solaris 8.
diff --git a/net/haproxy/patches/001-BUG-MEDIUM-ssl-Dont-attempt-to-set-alpn-if-were-not-using-SSL.patch b/net/haproxy/patches/001-BUG-MEDIUM-ssl-Dont-attempt-to-set-alpn-if-were-not-using-SSL.patch
deleted file mode 100644 (file)
index a37cda5..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-commit aa2ecea6f711f50192476b26a5b1d767108bd761
-Author: Olivier Houchard <ohouchard@haproxy.com>
-Date:   Fri Jun 28 14:10:33 2019 +0200
-
-    BUG/MEDIUM: ssl: Don't attempt to set alpn if we're not using SSL.
-    
-    Checks use ssl_sock_set_alpn() to set the ALPN if check-alpn is used, however
-    check-alpn failed to check if the connection was indeed using SSL, and thus,
-    would crash if check-alpn was used on a non-SSL connection. Fix this by
-    making sure the connection uses SSL before attempting to set the ALPN.
-    
-    This should be backported to 2.0 and 1.9.
-    
-    (cherry picked from commit e488ea865a433d93efcb14c0c602918070c6b208)
-    Signed-off-by: Willy Tarreau <w@1wt.eu>
-
-diff --git a/src/ssl_sock.c b/src/ssl_sock.c
-index 05240063..c9fffbec 100644
---- a/src/ssl_sock.c
-+++ b/src/ssl_sock.c
-@@ -6411,6 +6411,9 @@ void ssl_sock_set_alpn(struct connection *conn, const unsigned char *alpn, int l
- #ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
-       struct ssl_sock_ctx *ctx = conn->xprt_ctx;
-+      if (!ssl_sock_is_ssl(conn))
-+              return;
-+
-       SSL_set_alpn_protos(ctx->ssl, alpn, len);
- #endif
- }
diff --git a/net/haproxy/patches/001-OPENWRT-openssl-deprecated.patch b/net/haproxy/patches/001-OPENWRT-openssl-deprecated.patch
new file mode 100644 (file)
index 0000000..541077e
--- /dev/null
@@ -0,0 +1,12 @@
+--- a/include/common/openssl-compat.h
++++ b/include/common/openssl-compat.h
+@@ -217,7 +217,8 @@ static inline int EVP_PKEY_base_id(EVP_PKEY *pkey)
+ #define TLSEXT_signature_ecdsa      3
+ #endif
+-#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || (LIBRESSL_VERSION_NUMBER < 0x20700000L)
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++      (defined(LIBRESSL_VERSION_NUMBER) && (LIBRESSL_VERSION_NUMBER < 0x20700000L))
+ #define X509_getm_notBefore     X509_get_notBefore
+ #define X509_getm_notAfter      X509_get_notAfter
+ #endif
diff --git a/net/haproxy/patches/002-BUG-MEDIUM-mux-h1-Always-release-H1C-if-a-shutdown-for-writes-was-reported.patch b/net/haproxy/patches/002-BUG-MEDIUM-mux-h1-Always-release-H1C-if-a-shutdown-for-writes-was-reported.patch
deleted file mode 100644 (file)
index 140ec71..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-commit 9fa93f6220a374f724491fd781d44d31f307671f
-Author: Christopher Faulet <cfaulet@haproxy.com>
-Date:   Fri Jun 28 17:41:42 2019 +0200
-
-    BUG/MEDIUM: mux-h1: Always release H1C if a shutdown for writes was reported
-    
-    We must take care of this when the stream is detached from the
-    connection. Otherwise, on the server side, the connexion is inserted in the list
-    of idle connections of the session. But when reused, because the shutdown for
-    writes was already catched, nothing is sent to the server and the session is
-    blocked with a freezed connection.
-    
-    This patch must be backported to 2.0 and 1.9. It is related to the issue #136
-    reported on Github.
-    
-    (cherry picked from commit 3ac0f43020e1cd77198020201e4e482a1c2ef8ac)
-    Signed-off-by: Willy Tarreau <w@1wt.eu>
-
-diff --git a/src/mux_h1.c b/src/mux_h1.c
-index 3d2bd8b8..e497e6f6 100644
---- a/src/mux_h1.c
-+++ b/src/mux_h1.c
-@@ -2192,9 +2192,9 @@ static void h1_detach(struct conn_stream *cs)
-               }
-       }
--      /* We don't want to close right now unless the connection is in error */
--      if ((h1c->flags & (H1C_F_CS_ERROR|H1C_F_CS_SHUTDOWN|H1C_F_UPG_H2C)) ||
--          (h1c->conn->flags & CO_FL_ERROR) || !h1c->conn->owner)
-+      /* We don't want to close right now unless the connection is in error or shut down for writes */
-+      if ((h1c->flags & (H1C_F_CS_ERROR|H1C_F_CS_SHUTW_NOW|H1C_F_CS_SHUTDOWN|H1C_F_UPG_H2C)) ||
-+          (h1c->conn->flags & (CO_FL_ERROR|CO_FL_SOCK_WR_SH)) || !h1c->conn->owner)
-               h1_release(h1c);
-       else {
-               tasklet_wakeup(h1c->wait_event.tasklet);
diff --git a/net/haproxy/patches/003-BUG-MEDIUM-checks-unblock-signals-in-external-checks.patch b/net/haproxy/patches/003-BUG-MEDIUM-checks-unblock-signals-in-external-checks.patch
deleted file mode 100644 (file)
index d23dbdc..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-commit afc313e6cd4be32f3c3d212e875d4dbcef8a0c70
-Author: Willy Tarreau <w@1wt.eu>
-Date:   Mon Jul 1 07:51:29 2019 +0200
-
-    BUG/MEDIUM: checks: unblock signals in external checks
-    
-    As discussed in issue #140, processes are forked with signals blocked
-    resulting in haproxy's kill being ignored. This happens when the command
-    takes more time to complete than the configured check timeout or interval.
-    Just calling "sleep 30" every second makes the problem obvious.
-    
-    The fix simply consists in unblocking the signals in the child after the
-    fork. It needs to be backported to all stable branches containing external
-    checks and where signals are blocked on startup. It's unclear when it
-    started, but the following config exhibits the issue :
-    
-      global
-        external-check
-    
-      listen www
-        bind :8001
-        timeout client 5s
-        timeout server 5s
-        timeout connect 5s
-        option external-check
-        external-check command "$PWD/sleep10.sh"
-        server local 127.0.0.1:80 check inter 200
-    
-      $ cat sleep10.sh
-      #!/bin/sh
-      exec /bin/sleep 10
-    
-    The "sleep" processes keep accumulating for 10 seconds and stabilize
-    around 25 when the bug is present. Just issuing "killall sleep" has no
-    effect on them, and stopping haproxy leaves these processes behind.
-    
-    (cherry picked from commit 2df8cad0fea2d1a4ca8dd58f384df3c3c3f5d7ee)
-    Signed-off-by: Willy Tarreau <w@1wt.eu>
-
-diff --git a/src/checks.c b/src/checks.c
-index c175a752..e31eb173 100644
---- a/src/checks.c
-+++ b/src/checks.c
-@@ -1997,6 +1997,7 @@ static int connect_proc_chk(struct task *t)
-               environ = check->envp;
-               extchk_setenv(check, EXTCHK_HAPROXY_SERVER_CURCONN, ultoa_r(s->cur_sess, buf, sizeof(buf)));
-+              haproxy_unblock_signals();
-               execvp(px->check_command, check->argv);
-               ha_alert("Failed to exec process for external health check: %s. Aborting.\n",
-                        strerror(errno));
diff --git a/net/haproxy/patches/004-BUG-MINOR-mux-h1-Skip-trailers-for-non-chunked-outgoing-messages.patch b/net/haproxy/patches/004-BUG-MINOR-mux-h1-Skip-trailers-for-non-chunked-outgoing-messages.patch
deleted file mode 100644 (file)
index 2e16401..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-commit 52131680c42ddbfa6f2b5d109ffc79c28f44e42a
-Author: Christopher Faulet <cfaulet@haproxy.com>
-Date:   Thu Jun 27 17:40:14 2019 +0200
-
-    BUG/MINOR: mux-h1: Skip trailers for non-chunked outgoing messages
-    
-    Unlike H1, H2 messages may contains trailers while the header "Content-Length"
-    is set. Indeed, because of the framed structure of HTTP/2, it is no longer
-    necessary to use the chunked transfer encoding. So Trailing HEADERS frames,
-    after all DATA frames, may be added on messages with an explicit content length.
-    
-    But in H1, it is impossible to have trailers on non-chunked messages. So when
-    outgoing messages are formatted by the H1 multiplexer, if the message is not
-    chunked, all trailers must be dropped.
-    
-    This patch must be backported to 2.0 and 1.9. However, the patch will have to be
-    adapted for the 1.9.
-    
-    (cherry picked from commit 5433a0b0215c791b4165bddd360a254fa141c6e9)
-    Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
-
-diff --git a/src/mux_h1.c b/src/mux_h1.c
-index e497e6f6..e7d769b4 100644
---- a/src/mux_h1.c
-+++ b/src/mux_h1.c
-@@ -1696,7 +1696,9 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun
-                                       goto done;
-                               }
-                               else if (type == HTX_BLK_EOT || type == HTX_BLK_TLR) {
--                                      if (!chunk_memcat(&tmp, "0\r\n", 3))
-+                                      /* If the message is not chunked, never
-+                                       * add the last chunk. */
-+                                      if ((h1m->flags & H1_MF_CHNK) && !chunk_memcat(&tmp, "0\r\n", 3))
-                                               goto copy;
-                                       goto trailers;
-                               }
-@@ -1715,6 +1717,11 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun
-                                       goto error;
-                         trailers:
-                               h1m->state = H1_MSG_TRAILERS;
-+                              /* If the message is not chunked, ignore
-+                               * trailers. It may happen with H2 messages. */
-+                              if (!(h1m->flags & H1_MF_CHNK))
-+                                      break;
-+
-                               if (type == HTX_BLK_EOT) {
-                                       if (!chunk_memcat(&tmp, "\r\n", 2))
-                                               goto copy;
diff --git a/net/haproxy/patches/005-BUG-MINOR-mux-h1-Dont-return-the-empty-chunk-on-HEAD-responses.patch b/net/haproxy/patches/005-BUG-MINOR-mux-h1-Dont-return-the-empty-chunk-on-HEAD-responses.patch
deleted file mode 100644 (file)
index d161960..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-commit 33d58b51e0f1bf68603aa86c9125ae75d6964454
-Author: Christopher Faulet <cfaulet@haproxy.com>
-Date:   Mon Jul 1 16:17:30 2019 +0200
-
-    BUG/MINOR: mux-h1: Don't return the empty chunk on HEAD responses
-    
-    HEAD responses must not have any body payload. But, because of a bug, for chunk
-    reponses, the empty chunk was always added.
-    
-    This patch fixes the Github issue #146. It must be backported to 2.0 and 1.9.
-    
-    (cherry picked from commit b8fc304e8f996f0d9835e4d6524ef8961d3be076)
-    Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
-
-diff --git a/src/mux_h1.c b/src/mux_h1.c
-index e7d769b4..37cc8252 100644
---- a/src/mux_h1.c
-+++ b/src/mux_h1.c
-@@ -1682,6 +1682,8 @@ static size_t h1_process_output(struct h1c *h1c, struct buffer *buf, size_t coun
-                                       h1m->flags |= (H1_MF_NO_PHDR|H1_MF_CLEAN_CONN_HDR);
-                                       h1s->flags &= ~H1S_F_HAVE_O_CONN;
-                               }
-+                              else if ((h1m->flags & H1_MF_RESP) &&  h1s->meth == HTTP_METH_HEAD)
-+                                      h1m->state = H1_MSG_DONE;
-                               else
-                                       h1m->state = H1_MSG_DATA;
-                               break;
diff --git a/net/haproxy/patches/006-OPENWRT-add-uclibc-support.patch b/net/haproxy/patches/006-OPENWRT-add-uclibc-support.patch
deleted file mode 100644 (file)
index 2757025..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -327,6 +327,15 @@ ifeq ($(TARGET),linux-glibc)
-     USE_GETADDRINFO)
- endif
-+# For linux >= 2.6.28 and uclibc
-+ifeq ($(TARGET),linux-uclibc)
-+  set_target_defaults = $(call default_opts, \
-+    USE_POLL USE_TPROXY USE_DL USE_RT USE_NETFILTER                           \
-+    USE_CPU_AFFINITY USE_THREAD USE_EPOLL USE_FUTEX USE_LINUX_TPROXY          \
-+    USE_ACCEPT4 USE_LINUX_SPLICE USE_PRCTL USE_THREAD_DUMP USE_NS USE_TFO     \
-+    USE_GETADDRINFO)
-+endif
-+
- # Solaris 8 and above
- ifeq ($(TARGET),solaris)
-   # We also enable getaddrinfo() which works since solaris 8.
diff --git a/net/haproxy/patches/007-OPENWRT-openssl-deprecated.patch b/net/haproxy/patches/007-OPENWRT-openssl-deprecated.patch
deleted file mode 100644 (file)
index 541077e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/include/common/openssl-compat.h
-+++ b/include/common/openssl-compat.h
-@@ -217,7 +217,8 @@ static inline int EVP_PKEY_base_id(EVP_PKEY *pkey)
- #define TLSEXT_signature_ecdsa      3
- #endif
--#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || (LIBRESSL_VERSION_NUMBER < 0x20700000L)
-+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
-+      (defined(LIBRESSL_VERSION_NUMBER) && (LIBRESSL_VERSION_NUMBER < 0x20700000L))
- #define X509_getm_notBefore     X509_get_notBefore
- #define X509_getm_notAfter      X509_get_notAfter
- #endif
index 4b58479dae3cc516cdbedbba74fcf5ada044a598..55b383618c3f2334a613ea154980b1ec40d3d0bd 100644 (file)
@@ -27,7 +27,7 @@ define Package/hcxdumptool
   DEPENDS:=+libpcap
   TITLE:=hcxdumptool
   URL:=https://github.com/ZerBea/hcxdumptool
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
 endef
 
 define Package/hcxdumptool/description
index 370ab685b6e1fb45067574afb4acfc298c893177..234b0e67bb1dc3e080ef085aab7c6e060d3a3648 100644 (file)
@@ -27,7 +27,7 @@ define Package/hcxtools
   DEPENDS:=+libpthread +libpcap +zlib +libcurl +libopenssl
   TITLE:=hcxtools
   URL:=https://github.com/ZerBea/hcxtools
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
 endef
 
 define Package/hcxtools/description
index 6805199e51ab61030a0817cd17cfbc96ddad7f55..b0184a4417f2b6976d2419605bb76f9292187ef9 100644 (file)
@@ -28,7 +28,7 @@ MAKE_FLAGS += DEBUG=1 LIBNL=tiny
 define Package/horst
        SECTION:=net
        CATEGORY:=Network
-       SUBMENU:=wireless
+       SUBMENU:=Wireless
        DEPENDS:=+libncurses +libnl-tiny
        MAINTAINER:=Bruno Randolf <br1@einfach.org>
        TITLE:=Highly Optimized 802.11 Radio Scanning Tool
index c60ba9d1b1d207750ccb9bbb5017ca85d3fb1bee..d52a159a41d99b5076159cf7d623c654d69c28c1 100644 (file)
@@ -76,7 +76,7 @@ endef
 define Package/kea-admin
        $(call Package/kea/Default)
        TITLE+= Admin
-       DEPENDS:= +kea-libs +python3
+       DEPENDS:= +kea-libs
 endef
 
 define Package/kea-ctrl
index 97f56fe8905d5d8a987280db34ea5a9810176f64..c44080752dfbd23b51f963d6bc12f38036ef44a3 100644 (file)
@@ -27,7 +27,7 @@ define Package/kismet/Default
   MAINTAINER:=Jean-Michel lacroix <lacroix@lepine-lacroix.info>
   DEPENDS:= $(CXX_DEPENDS) +libnl
   URL:=http://www.kismetwireless.net/
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
 endef
 
 define Package/kismet/Default/description
index e30b76cd912eb1811143d388f82f1330ee647ce9..9c3faab9b3a8ba8a8968d093f43ff384b7a6a6f5 100644 (file)
@@ -28,7 +28,7 @@ define Package/netifyd
   CATEGORY:=Network
   TITLE:=Netify Agent
   URL:=http://www.netify.ai/
-  DEPENDS:=+libcurl +libmnl +libnetfilter-conntrack +libjson-c +libpcap +zlib +libpthread
+  DEPENDS:=+libcurl +libmnl +libnetfilter-conntrack +libjson-c +libpcap +zlib +libpthread @!USE_UCLIBC
   # Explicitly depend on libstdcpp rather than $(CXX_DEPENDS).  At the moment
   # std::unordered_map is only available via libstdcpp which is required for
   # performance reasons.
index f7cc879851129ccc67937eb6b111cc36c179df31..f82cbaa8c3a8e0bb529418433d5ef74b940afe56 100644 (file)
@@ -1,12 +1,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=pdns-recursor
-PKG_VERSION:=4.1.14
+PKG_VERSION:=4.2.0
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=https://downloads.powerdns.com/releases/
-PKG_HASH:=7fceb8fa3bea693aad49d137c801bb3ecc15525cc5a7dc84380321546e87bf14
+PKG_HASH:=f03c72c1816fdcc645cc539d8c16721d2ec294feac9b5179e78c3db311b7c2c2
 
 PKG_MAINTAINER:=James Taylor <james@jtaylor.id.au>
 PKG_LICENCE:=GPL-2.0-only
@@ -41,9 +41,9 @@ endef
 
 CONFIGURE_ARGS+= \
        --sysconfdir=/etc/powerdns \
-       --with-lua \
-       --without-luajit \
-       --disable-libsodium \
+       --with-lua=lua \
+       --without-libcap \
+       --without-libsodium \
        --with-protobuf \
        --without-net-snmp \
        --disable-silent-rules
index d30e23867be25419670c900b6bf375894ef0bbb9..8a40ce5148bb6b5737657441512806692b58e25b 100644 (file)
 # api-key=
 
 #################################
-# api-logfile  Location of the server logfile (used by the REST API)
+# auth-zones   Zones for which we have authoritative data, comma separated domain=file pairs 
 #
-# api-logfile=/var/log/pdns.log
+# auth-zones=
 
 #################################
-# api-readonly Disallow data modification through the REST API when set
+# carbon-instance      If set overwrites the the instance name default
 #
-# api-readonly=no
+# carbon-instance=recursor
 
 #################################
-# auth-zones   Zones for which we have authoritative data, comma separated domain=file pairs 
+# carbon-interval      Number of seconds between carbon (graphite) updates
 #
-# auth-zones=
+# carbon-interval=30
 
 #################################
-# carbon-interval      Number of seconds between carbon (graphite) updates
+# carbon-namespace     If set overwrites the first part of the carbon string
 #
-# carbon-interval=30
+# carbon-namespace=pdns
 
 #################################
 # carbon-ourname       If set, overrides our reported hostname for carbon stats
@@ -67,7 +67,7 @@
 #################################
 # config-dir   Location of configuration directory (recursor.conf)
 #
-# config-dir=/usr/local/etc
+# config-dir=/etc/powerdns
 
 #################################
 # config-name  Name of this virtual configuration - will rename the binary image
 #
 # disable-packetcache=no
 
-#################################
-# disable-real-memory-usage    Disable expensive real-memory-usage metric
-#
-# disable-real-memory-usage=no
-
 #################################
 # disable-syslog       Disable logging to syslog, useful when running inside a supervisor that logs stdout
 #
 #
 # distribution-load-factor=0.0
 
+#################################
+# distribution-pipe-buffer-size        Size in bytes of the internal buffer of the pipe used by the distributor to pass incoming queries to a worker thread
+#
+# distribution-pipe-buffer-size=0
+
+#################################
+# distributor-threads  Launch this number of distributor threads, distributing queries to other threads
+#
+# distributor-threads=0
+
 #################################
 # dnssec       DNSSEC mode: off/process-no-validate (default)/process/log-fail/validate
 #
 #
 # dont-query=127.0.0.0/8, 10.0.0.0/8, 100.64.0.0/10, 169.254.0.0/16, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fc00::/7, fe80::/10, 0.0.0.0/8, 192.0.0.0/24, 192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24, 240.0.0.0/4, ::/96, ::ffff:0:0/96, 100::/64, 2001:db8::/32
 
+#################################
+# dont-throttle-names  Do not throttle nameservers with this name or suffix
+#
+# dont-throttle-names=
+
+#################################
+# dont-throttle-netmasks       Do not throttle nameservers with this IP netmask
+#
+# dont-throttle-netmasks=
+
+#################################
+# ecs-add-for  List of client netmasks for which EDNS Client Subnet will be added
+#
+# ecs-add-for=0.0.0.0/0, ::/0, !127.0.0.0/8, !10.0.0.0/8, !100.64.0.0/10, !169.254.0.0/16, !192.168.0.0/16, !172.16.0.0/12, !::1/128, !fc00::/7, !fe80::/10
+
 #################################
 # ecs-cache-limit-ttl  Minimum TTL to cache ECS response
 #
 #
 # ecs-ipv6-cache-bits=56
 
+#################################
+# ecs-minimum-ttl-override     Set under adverse conditions, a minimum TTL for records in ECS-specific answers
+#
+# ecs-minimum-ttl-override=0
+
 #################################
 # ecs-scope-zero-address       Address to send to whitelisted authoritative servers for incoming queries with ECS prefix-length source of 0
 #
 #################################
 # edns-outgoing-bufsize        Outgoing EDNS buffer size
 #
-# edns-outgoing-bufsize=1680
+# edns-outgoing-bufsize=1232
 
 #################################
 # edns-subnet-whitelist        List of netmasks and domains that we should enable EDNS subnet for
 #
 # lua-dns-script=
 
+#################################
+# lua-maintenance-interval     Number of seconds between calls to the lua user defined maintenance() function
+#
+# lua-maintenance-interval=1
+
+#################################
+# max-cache-bogus-ttl  maximum number of seconds to keep a Bogus (positive or negative) cached entry in memory
+#
+# max-cache-bogus-ttl=3600
+
 #################################
 # max-cache-entries    If set, maximum number of entries in the main cache
 #
 #
 # processes=1
 
+#################################
+# protobuf-use-kernel-timestamp        Compute the latency of queries in protobuf messages by using the timestamp set by the kernel when the query was received (when available)
+#
+# protobuf-use-kernel-timestamp=
+
+#################################
+# public-suffix-list-file      Path to the Public Suffix List file, if any
+#
+# public-suffix-list-file=
+
 #################################
 # query-local-address  Source IP address for sending queries
 #
 #
 # reuseport=no
 
+#################################
+# rng  Specify random number generator to use. Valid values are auto,sodium,openssl,getrandom,arc4random,urandom.
+#
+# rng=auto
+
 #################################
 # root-nx-trust        If set, believe that an NXDOMAIN from the root means the TLD does not exist
 #
 # server-down-throttle-time=60
 
 #################################
-# server-id    Returned when queried for 'id.server' TXT or NSID, defaults to hostname
+# server-id    Returned when queried for 'id.server' TXT or NSID, defaults to hostname, set custom or 'disabled'
 #
 # server-id=
 
 # setuid=
 
 #################################
-# signature-inception-skew     Allow the signture inception to be off by this number of seconds
+# signature-inception-skew     Allow the signature inception to be off by this number of seconds
 #
-# signature-inception-skew=0
+# signature-inception-skew=60
 
 #################################
 # single-socket        If set, only use a single socket for outgoing queries
 #
 # statistics-interval=1800
 
+#################################
+# stats-api-blacklist  List of statistics that are disabled when retrieving the complete list of statistics via the API
+#
+# stats-api-blacklist=cache-bytes, packetcache-bytes, special-memory-usage, ecs-v4-response-bits-1, ecs-v4-response-bits-2, ecs-v4-response-bits-3, ecs-v4-response-bits-4, ecs-v4-response-bits-5, ecs-v4-response-bits-6, ecs-v4-response-bits-7, ecs-v4-response-bits-8, ecs-v4-response-bits-9, ecs-v4-response-bits-10, ecs-v4-response-bits-11, ecs-v4-response-bits-12, ecs-v4-response-bits-13, ecs-v4-response-bits-14, ecs-v4-response-bits-15, ecs-v4-response-bits-16, ecs-v4-response-bits-17, ecs-v4-response-bits-18, ecs-v4-response-bits-19, ecs-v4-response-bits-20, ecs-v4-response-bits-21, ecs-v4-response-bits-22, ecs-v4-response-bits-23, ecs-v4-response-bits-24, ecs-v4-response-bits-25, ecs-v4-response-bits-26, ecs-v4-response-bits-27, ecs-v4-response-bits-28, ecs-v4-response-bits-29, ecs-v4-response-bits-30, ecs-v4-response-bits-31, ecs-v4-response-bits-32, ecs-v6-response-bits-1, ecs-v6-response-bits-2, ecs-v6-response-bits-3, ecs-v6-response-bits-4, ecs-v6-response-bits-5, ecs-v6-response-bits-6, ecs-v6-response-bits-7, ecs-v6-response-bits-8, ecs-v6-response-bits-9, ecs-v6-response-bits-10, ecs-v6-response-bits-11, ecs-v6-response-bits-12, ecs-v6-response-bits-13, ecs-v6-response-bits-14, ecs-v6-response-bits-15, ecs-v6-response-bits-16, ecs-v6-response-bits-17, ecs-v6-response-bits-18, ecs-v6-response-bits-19, ecs-v6-response-bits-20, ecs-v6-response-bits-21, ecs-v6-response-bits-22, ecs-v6-response-bits-23, ecs-v6-response-bits-24, ecs-v6-response-bits-25, ecs-v6-response-bits-26, ecs-v6-response-bits-27, ecs-v6-response-bits-28, ecs-v6-response-bits-29, ecs-v6-response-bits-30, ecs-v6-response-bits-31, ecs-v6-response-bits-32, ecs-v6-response-bits-33, ecs-v6-response-bits-34, ecs-v6-response-bits-35, ecs-v6-response-bits-36, ecs-v6-response-bits-37, ecs-v6-response-bits-38, ecs-v6-response-bits-39, ecs-v6-response-bits-40, ecs-v6-response-bits-41, ecs-v6-response-bits-42, ecs-v6-response-bits-43, ecs-v6-response-bits-44, ecs-v6-response-bits-45, ecs-v6-response-bits-46, ecs-v6-response-bits-47, ecs-v6-response-bits-48, ecs-v6-response-bits-49, ecs-v6-response-bits-50, ecs-v6-response-bits-51, ecs-v6-response-bits-52, ecs-v6-response-bits-53, ecs-v6-response-bits-54, ecs-v6-response-bits-55, ecs-v6-response-bits-56, ecs-v6-response-bits-57, ecs-v6-response-bits-58, ecs-v6-response-bits-59, ecs-v6-response-bits-60, ecs-v6-response-bits-61, ecs-v6-response-bits-62, ecs-v6-response-bits-63, ecs-v6-response-bits-64, ecs-v6-response-bits-65, ecs-v6-response-bits-66, ecs-v6-response-bits-67, ecs-v6-response-bits-68, ecs-v6-response-bits-69, ecs-v6-response-bits-70, ecs-v6-response-bits-71, ecs-v6-response-bits-72, ecs-v6-response-bits-73, ecs-v6-response-bits-74, ecs-v6-response-bits-75, ecs-v6-response-bits-76, ecs-v6-response-bits-77, ecs-v6-response-bits-78, ecs-v6-response-bits-79, ecs-v6-response-bits-80, ecs-v6-response-bits-81, ecs-v6-response-bits-82, ecs-v6-response-bits-83, ecs-v6-response-bits-84, ecs-v6-response-bits-85, ecs-v6-response-bits-86, ecs-v6-response-bits-87, ecs-v6-response-bits-88, ecs-v6-response-bits-89, ecs-v6-response-bits-90, ecs-v6-response-bits-91, ecs-v6-response-bits-92, ecs-v6-response-bits-93, ecs-v6-response-bits-94, ecs-v6-response-bits-95, ecs-v6-response-bits-96, ecs-v6-response-bits-97, ecs-v6-response-bits-98, ecs-v6-response-bits-99, ecs-v6-response-bits-100, ecs-v6-response-bits-101, ecs-v6-response-bits-102, ecs-v6-response-bits-103, ecs-v6-response-bits-104, ecs-v6-response-bits-105, ecs-v6-response-bits-106, ecs-v6-response-bits-107, ecs-v6-response-bits-108, ecs-v6-response-bits-109, ecs-v6-response-bits-110, ecs-v6-response-bits-111, ecs-v6-response-bits-112, ecs-v6-response-bits-113, ecs-v6-response-bits-114, ecs-v6-response-bits-115, ecs-v6-response-bits-116, ecs-v6-response-bits-117, ecs-v6-response-bits-118, ecs-v6-response-bits-119, ecs-v6-response-bits-120, ecs-v6-response-bits-121, ecs-v6-response-bits-122, ecs-v6-response-bits-123, ecs-v6-response-bits-124, ecs-v6-response-bits-125, ecs-v6-response-bits-126, ecs-v6-response-bits-127, ecs-v6-response-bits-128
+
+#################################
+# stats-carbon-blacklist       List of statistics that are prevented from being exported via Carbon
+#
+# stats-carbon-blacklist=cache-bytes, packetcache-bytes, special-memory-usage, ecs-v4-response-bits-1, ecs-v4-response-bits-2, ecs-v4-response-bits-3, ecs-v4-response-bits-4, ecs-v4-response-bits-5, ecs-v4-response-bits-6, ecs-v4-response-bits-7, ecs-v4-response-bits-8, ecs-v4-response-bits-9, ecs-v4-response-bits-10, ecs-v4-response-bits-11, ecs-v4-response-bits-12, ecs-v4-response-bits-13, ecs-v4-response-bits-14, ecs-v4-response-bits-15, ecs-v4-response-bits-16, ecs-v4-response-bits-17, ecs-v4-response-bits-18, ecs-v4-response-bits-19, ecs-v4-response-bits-20, ecs-v4-response-bits-21, ecs-v4-response-bits-22, ecs-v4-response-bits-23, ecs-v4-response-bits-24, ecs-v4-response-bits-25, ecs-v4-response-bits-26, ecs-v4-response-bits-27, ecs-v4-response-bits-28, ecs-v4-response-bits-29, ecs-v4-response-bits-30, ecs-v4-response-bits-31, ecs-v4-response-bits-32, ecs-v6-response-bits-1, ecs-v6-response-bits-2, ecs-v6-response-bits-3, ecs-v6-response-bits-4, ecs-v6-response-bits-5, ecs-v6-response-bits-6, ecs-v6-response-bits-7, ecs-v6-response-bits-8, ecs-v6-response-bits-9, ecs-v6-response-bits-10, ecs-v6-response-bits-11, ecs-v6-response-bits-12, ecs-v6-response-bits-13, ecs-v6-response-bits-14, ecs-v6-response-bits-15, ecs-v6-response-bits-16, ecs-v6-response-bits-17, ecs-v6-response-bits-18, ecs-v6-response-bits-19, ecs-v6-response-bits-20, ecs-v6-response-bits-21, ecs-v6-response-bits-22, ecs-v6-response-bits-23, ecs-v6-response-bits-24, ecs-v6-response-bits-25, ecs-v6-response-bits-26, ecs-v6-response-bits-27, ecs-v6-response-bits-28, ecs-v6-response-bits-29, ecs-v6-response-bits-30, ecs-v6-response-bits-31, ecs-v6-response-bits-32, ecs-v6-response-bits-33, ecs-v6-response-bits-34, ecs-v6-response-bits-35, ecs-v6-response-bits-36, ecs-v6-response-bits-37, ecs-v6-response-bits-38, ecs-v6-response-bits-39, ecs-v6-response-bits-40, ecs-v6-response-bits-41, ecs-v6-response-bits-42, ecs-v6-response-bits-43, ecs-v6-response-bits-44, ecs-v6-response-bits-45, ecs-v6-response-bits-46, ecs-v6-response-bits-47, ecs-v6-response-bits-48, ecs-v6-response-bits-49, ecs-v6-response-bits-50, ecs-v6-response-bits-51, ecs-v6-response-bits-52, ecs-v6-response-bits-53, ecs-v6-response-bits-54, ecs-v6-response-bits-55, ecs-v6-response-bits-56, ecs-v6-response-bits-57, ecs-v6-response-bits-58, ecs-v6-response-bits-59, ecs-v6-response-bits-60, ecs-v6-response-bits-61, ecs-v6-response-bits-62, ecs-v6-response-bits-63, ecs-v6-response-bits-64, ecs-v6-response-bits-65, ecs-v6-response-bits-66, ecs-v6-response-bits-67, ecs-v6-response-bits-68, ecs-v6-response-bits-69, ecs-v6-response-bits-70, ecs-v6-response-bits-71, ecs-v6-response-bits-72, ecs-v6-response-bits-73, ecs-v6-response-bits-74, ecs-v6-response-bits-75, ecs-v6-response-bits-76, ecs-v6-response-bits-77, ecs-v6-response-bits-78, ecs-v6-response-bits-79, ecs-v6-response-bits-80, ecs-v6-response-bits-81, ecs-v6-response-bits-82, ecs-v6-response-bits-83, ecs-v6-response-bits-84, ecs-v6-response-bits-85, ecs-v6-response-bits-86, ecs-v6-response-bits-87, ecs-v6-response-bits-88, ecs-v6-response-bits-89, ecs-v6-response-bits-90, ecs-v6-response-bits-91, ecs-v6-response-bits-92, ecs-v6-response-bits-93, ecs-v6-response-bits-94, ecs-v6-response-bits-95, ecs-v6-response-bits-96, ecs-v6-response-bits-97, ecs-v6-response-bits-98, ecs-v6-response-bits-99, ecs-v6-response-bits-100, ecs-v6-response-bits-101, ecs-v6-response-bits-102, ecs-v6-response-bits-103, ecs-v6-response-bits-104, ecs-v6-response-bits-105, ecs-v6-response-bits-106, ecs-v6-response-bits-107, ecs-v6-response-bits-108, ecs-v6-response-bits-109, ecs-v6-response-bits-110, ecs-v6-response-bits-111, ecs-v6-response-bits-112, ecs-v6-response-bits-113, ecs-v6-response-bits-114, ecs-v6-response-bits-115, ecs-v6-response-bits-116, ecs-v6-response-bits-117, ecs-v6-response-bits-118, ecs-v6-response-bits-119, ecs-v6-response-bits-120, ecs-v6-response-bits-121, ecs-v6-response-bits-122, ecs-v6-response-bits-123, ecs-v6-response-bits-124, ecs-v6-response-bits-125, ecs-v6-response-bits-126, ecs-v6-response-bits-127, ecs-v6-response-bits-128
+
+#################################
+# stats-rec-control-blacklist  List of statistics that are prevented from being exported via rec_control get-all
+#
+# stats-rec-control-blacklist=cache-bytes, packetcache-bytes, special-memory-usage, ecs-v4-response-bits-1, ecs-v4-response-bits-2, ecs-v4-response-bits-3, ecs-v4-response-bits-4, ecs-v4-response-bits-5, ecs-v4-response-bits-6, ecs-v4-response-bits-7, ecs-v4-response-bits-8, ecs-v4-response-bits-9, ecs-v4-response-bits-10, ecs-v4-response-bits-11, ecs-v4-response-bits-12, ecs-v4-response-bits-13, ecs-v4-response-bits-14, ecs-v4-response-bits-15, ecs-v4-response-bits-16, ecs-v4-response-bits-17, ecs-v4-response-bits-18, ecs-v4-response-bits-19, ecs-v4-response-bits-20, ecs-v4-response-bits-21, ecs-v4-response-bits-22, ecs-v4-response-bits-23, ecs-v4-response-bits-24, ecs-v4-response-bits-25, ecs-v4-response-bits-26, ecs-v4-response-bits-27, ecs-v4-response-bits-28, ecs-v4-response-bits-29, ecs-v4-response-bits-30, ecs-v4-response-bits-31, ecs-v4-response-bits-32, ecs-v6-response-bits-1, ecs-v6-response-bits-2, ecs-v6-response-bits-3, ecs-v6-response-bits-4, ecs-v6-response-bits-5, ecs-v6-response-bits-6, ecs-v6-response-bits-7, ecs-v6-response-bits-8, ecs-v6-response-bits-9, ecs-v6-response-bits-10, ecs-v6-response-bits-11, ecs-v6-response-bits-12, ecs-v6-response-bits-13, ecs-v6-response-bits-14, ecs-v6-response-bits-15, ecs-v6-response-bits-16, ecs-v6-response-bits-17, ecs-v6-response-bits-18, ecs-v6-response-bits-19, ecs-v6-response-bits-20, ecs-v6-response-bits-21, ecs-v6-response-bits-22, ecs-v6-response-bits-23, ecs-v6-response-bits-24, ecs-v6-response-bits-25, ecs-v6-response-bits-26, ecs-v6-response-bits-27, ecs-v6-response-bits-28, ecs-v6-response-bits-29, ecs-v6-response-bits-30, ecs-v6-response-bits-31, ecs-v6-response-bits-32, ecs-v6-response-bits-33, ecs-v6-response-bits-34, ecs-v6-response-bits-35, ecs-v6-response-bits-36, ecs-v6-response-bits-37, ecs-v6-response-bits-38, ecs-v6-response-bits-39, ecs-v6-response-bits-40, ecs-v6-response-bits-41, ecs-v6-response-bits-42, ecs-v6-response-bits-43, ecs-v6-response-bits-44, ecs-v6-response-bits-45, ecs-v6-response-bits-46, ecs-v6-response-bits-47, ecs-v6-response-bits-48, ecs-v6-response-bits-49, ecs-v6-response-bits-50, ecs-v6-response-bits-51, ecs-v6-response-bits-52, ecs-v6-response-bits-53, ecs-v6-response-bits-54, ecs-v6-response-bits-55, ecs-v6-response-bits-56, ecs-v6-response-bits-57, ecs-v6-response-bits-58, ecs-v6-response-bits-59, ecs-v6-response-bits-60, ecs-v6-response-bits-61, ecs-v6-response-bits-62, ecs-v6-response-bits-63, ecs-v6-response-bits-64, ecs-v6-response-bits-65, ecs-v6-response-bits-66, ecs-v6-response-bits-67, ecs-v6-response-bits-68, ecs-v6-response-bits-69, ecs-v6-response-bits-70, ecs-v6-response-bits-71, ecs-v6-response-bits-72, ecs-v6-response-bits-73, ecs-v6-response-bits-74, ecs-v6-response-bits-75, ecs-v6-response-bits-76, ecs-v6-response-bits-77, ecs-v6-response-bits-78, ecs-v6-response-bits-79, ecs-v6-response-bits-80, ecs-v6-response-bits-81, ecs-v6-response-bits-82, ecs-v6-response-bits-83, ecs-v6-response-bits-84, ecs-v6-response-bits-85, ecs-v6-response-bits-86, ecs-v6-response-bits-87, ecs-v6-response-bits-88, ecs-v6-response-bits-89, ecs-v6-response-bits-90, ecs-v6-response-bits-91, ecs-v6-response-bits-92, ecs-v6-response-bits-93, ecs-v6-response-bits-94, ecs-v6-response-bits-95, ecs-v6-response-bits-96, ecs-v6-response-bits-97, ecs-v6-response-bits-98, ecs-v6-response-bits-99, ecs-v6-response-bits-100, ecs-v6-response-bits-101, ecs-v6-response-bits-102, ecs-v6-response-bits-103, ecs-v6-response-bits-104, ecs-v6-response-bits-105, ecs-v6-response-bits-106, ecs-v6-response-bits-107, ecs-v6-response-bits-108, ecs-v6-response-bits-109, ecs-v6-response-bits-110, ecs-v6-response-bits-111, ecs-v6-response-bits-112, ecs-v6-response-bits-113, ecs-v6-response-bits-114, ecs-v6-response-bits-115, ecs-v6-response-bits-116, ecs-v6-response-bits-117, ecs-v6-response-bits-118, ecs-v6-response-bits-119, ecs-v6-response-bits-120, ecs-v6-response-bits-121, ecs-v6-response-bits-122, ecs-v6-response-bits-123, ecs-v6-response-bits-124, ecs-v6-response-bits-125, ecs-v6-response-bits-126, ecs-v6-response-bits-127, ecs-v6-response-bits-128
+
 #################################
 # stats-ringbuffer-entries     maximum number of packets to store statistics for
 #
 # stats-ringbuffer-entries=10000
 
+#################################
+# stats-snmp-blacklist List of statistics that are prevented from being exported via SNMP
+#
+# stats-snmp-blacklist=cache-bytes, packetcache-bytes, special-memory-usage, ecs-v4-response-bits-1, ecs-v4-response-bits-2, ecs-v4-response-bits-3, ecs-v4-response-bits-4, ecs-v4-response-bits-5, ecs-v4-response-bits-6, ecs-v4-response-bits-7, ecs-v4-response-bits-8, ecs-v4-response-bits-9, ecs-v4-response-bits-10, ecs-v4-response-bits-11, ecs-v4-response-bits-12, ecs-v4-response-bits-13, ecs-v4-response-bits-14, ecs-v4-response-bits-15, ecs-v4-response-bits-16, ecs-v4-response-bits-17, ecs-v4-response-bits-18, ecs-v4-response-bits-19, ecs-v4-response-bits-20, ecs-v4-response-bits-21, ecs-v4-response-bits-22, ecs-v4-response-bits-23, ecs-v4-response-bits-24, ecs-v4-response-bits-25, ecs-v4-response-bits-26, ecs-v4-response-bits-27, ecs-v4-response-bits-28, ecs-v4-response-bits-29, ecs-v4-response-bits-30, ecs-v4-response-bits-31, ecs-v4-response-bits-32, ecs-v6-response-bits-1, ecs-v6-response-bits-2, ecs-v6-response-bits-3, ecs-v6-response-bits-4, ecs-v6-response-bits-5, ecs-v6-response-bits-6, ecs-v6-response-bits-7, ecs-v6-response-bits-8, ecs-v6-response-bits-9, ecs-v6-response-bits-10, ecs-v6-response-bits-11, ecs-v6-response-bits-12, ecs-v6-response-bits-13, ecs-v6-response-bits-14, ecs-v6-response-bits-15, ecs-v6-response-bits-16, ecs-v6-response-bits-17, ecs-v6-response-bits-18, ecs-v6-response-bits-19, ecs-v6-response-bits-20, ecs-v6-response-bits-21, ecs-v6-response-bits-22, ecs-v6-response-bits-23, ecs-v6-response-bits-24, ecs-v6-response-bits-25, ecs-v6-response-bits-26, ecs-v6-response-bits-27, ecs-v6-response-bits-28, ecs-v6-response-bits-29, ecs-v6-response-bits-30, ecs-v6-response-bits-31, ecs-v6-response-bits-32, ecs-v6-response-bits-33, ecs-v6-response-bits-34, ecs-v6-response-bits-35, ecs-v6-response-bits-36, ecs-v6-response-bits-37, ecs-v6-response-bits-38, ecs-v6-response-bits-39, ecs-v6-response-bits-40, ecs-v6-response-bits-41, ecs-v6-response-bits-42, ecs-v6-response-bits-43, ecs-v6-response-bits-44, ecs-v6-response-bits-45, ecs-v6-response-bits-46, ecs-v6-response-bits-47, ecs-v6-response-bits-48, ecs-v6-response-bits-49, ecs-v6-response-bits-50, ecs-v6-response-bits-51, ecs-v6-response-bits-52, ecs-v6-response-bits-53, ecs-v6-response-bits-54, ecs-v6-response-bits-55, ecs-v6-response-bits-56, ecs-v6-response-bits-57, ecs-v6-response-bits-58, ecs-v6-response-bits-59, ecs-v6-response-bits-60, ecs-v6-response-bits-61, ecs-v6-response-bits-62, ecs-v6-response-bits-63, ecs-v6-response-bits-64, ecs-v6-response-bits-65, ecs-v6-response-bits-66, ecs-v6-response-bits-67, ecs-v6-response-bits-68, ecs-v6-response-bits-69, ecs-v6-response-bits-70, ecs-v6-response-bits-71, ecs-v6-response-bits-72, ecs-v6-response-bits-73, ecs-v6-response-bits-74, ecs-v6-response-bits-75, ecs-v6-response-bits-76, ecs-v6-response-bits-77, ecs-v6-response-bits-78, ecs-v6-response-bits-79, ecs-v6-response-bits-80, ecs-v6-response-bits-81, ecs-v6-response-bits-82, ecs-v6-response-bits-83, ecs-v6-response-bits-84, ecs-v6-response-bits-85, ecs-v6-response-bits-86, ecs-v6-response-bits-87, ecs-v6-response-bits-88, ecs-v6-response-bits-89, ecs-v6-response-bits-90, ecs-v6-response-bits-91, ecs-v6-response-bits-92, ecs-v6-response-bits-93, ecs-v6-response-bits-94, ecs-v6-response-bits-95, ecs-v6-response-bits-96, ecs-v6-response-bits-97, ecs-v6-response-bits-98, ecs-v6-response-bits-99, ecs-v6-response-bits-100, ecs-v6-response-bits-101, ecs-v6-response-bits-102, ecs-v6-response-bits-103, ecs-v6-response-bits-104, ecs-v6-response-bits-105, ecs-v6-response-bits-106, ecs-v6-response-bits-107, ecs-v6-response-bits-108, ecs-v6-response-bits-109, ecs-v6-response-bits-110, ecs-v6-response-bits-111, ecs-v6-response-bits-112, ecs-v6-response-bits-113, ecs-v6-response-bits-114, ecs-v6-response-bits-115, ecs-v6-response-bits-116, ecs-v6-response-bits-117, ecs-v6-response-bits-118, ecs-v6-response-bits-119, ecs-v6-response-bits-120, ecs-v6-response-bits-121, ecs-v6-response-bits-122, ecs-v6-response-bits-123, ecs-v6-response-bits-124, ecs-v6-response-bits-125, ecs-v6-response-bits-126, ecs-v6-response-bits-127, ecs-v6-response-bits-128
+
 #################################
 # tcp-fast-open        Enable TCP Fast Open support on the listening sockets, using the supplied numerical value as the queue size
 #
 #
 # trace=off
 
+#################################
+# udp-source-port-avoid        List of comma separated UDP port number to avoid
+#
+# udp-source-port-avoid=11211
+
+#################################
+# udp-source-port-max  Maximum UDP port to bind on
+#
+# udp-source-port-max=65535
+
+#################################
+# udp-source-port-min  Minimum UDP port to bind on
+#
+# udp-source-port-min=1024
+
 #################################
 # udp-truncation-threshold     Maximum UDP response size before we truncate
 #
-# udp-truncation-threshold=1680
+# udp-truncation-threshold=1232
 
 #################################
 # use-incoming-edns-subnet     Pass along received EDNS Client Subnet information
 #################################
 # version-string       string reported on version.pdns or version.bind
 #
-# version-string=PowerDNS Recursor 4.1.13 (built Jun 14 2019 10:58:59 by xreaper@nimbus.for-no-reason.net)
+# version-string=PowerDNS Recursor 4.2.0 (built May 18 2019 15:59:49 by jamestk@zanzabar.cybase.for-no-reason.net)
 
 #################################
 # webserver    Start a webserver (for REST API)
 #
 # webserver-allow-from=127.0.0.1,::1
 
+#################################
+# webserver-loglevel   Amount of logging in the webserver (none, normal, detailed)
+#
+# webserver-loglevel=normal
+
 #################################
 # webserver-password   Password required for accessing the webserver
 #
 # write-pid    Write a PID file
 #
 # write-pid=yes
+
+#################################
+# xpf-allow-from       XPF information is only processed from these subnets
+#
+# xpf-allow-from=
+
+#################################
+# xpf-rr-code  XPF option code to use
+#
+# xpf-rr-code=0
+
+
diff --git a/net/pdns-recursor/patches/200-libatomic-detect.patch b/net/pdns-recursor/patches/200-libatomic-detect.patch
deleted file mode 100644 (file)
index 29881cc..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/m4/pdns_check_os.m4
-+++ b/m4/pdns_check_os.m4
-@@ -35,16 +35,21 @@
-   AM_CONDITIONAL([HAVE_LINUX], [test "x$have_linux" = "xyes"])
-   AM_CONDITIONAL([HAVE_SOLARIS], [test "x$have_solaris" = "xyes"])
-
--  case "$host" in
--  mips* | powerpc-* )
--    AC_MSG_CHECKING([whether the linker accepts -latomic])
--    LDFLAGS="-latomic $LDFLAGS"
--    AC_LINK_IFELSE([m4_default([],[AC_LANG_PROGRAM()])],
--      [AC_MSG_RESULT([yes])],
--      [AC_MSG_ERROR([Unable to link against libatomic, cannot continue])]
--    )
--    ;;
--  esac
-+  AC_MSG_CHECKING([whether -latomic is needed for __atomic builtins])
-+  AC_LINK_IFELSE(
-+    [AC_LANG_PROGRAM([[#include <stdint.h>]],
-+       [[uint64_t val = 0; __atomic_add_fetch(&val, 1, __ATOMIC_RELAXED);]]
-+    )],
-+    [AC_MSG_RESULT([no])],
-+    [LIBS="$LIBS -latomic"
-+     AC_LINK_IFELSE(
-+       [AC_LANG_PROGRAM([[#include <stdint.h>]],
-+               [[uint64_t val = 0; __atomic_add_fetch(&val, 1, __ATOMIC_RELAXED);]]
-+       )],
-+       [AC_MSG_RESULT([yes])],
-+       [AC_MSG_FAILURE([libatomic needed, but linking with -latomic failed, cannot continue])]
-+    )]
-+  )
-
-   AC_SUBST(THREADFLAGS)
-   AC_SUBST([DYNLINKFLAGS], [-export-dynamic])
diff --git a/net/pdns-recursor/patches/300-gen-version.patch b/net/pdns-recursor/patches/300-gen-version.patch
deleted file mode 100644 (file)
index 52d138f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
---- a/build-aux/gen-version
-+++ b/build-aux/gen-version
-@@ -1,39 +1,4 @@
- #!/bin/sh
--VERSION="unknown"
--
--DIRTY=""
--git status | grep -q clean || DIRTY='.dirty'
--
--# Special environment variable to signal that we are building a release, as this
--# has consequences for the version number.
--if [ "${IS_RELEASE}" = "YES" ]; then
--  TAG="$(git describe --tags --exact-match 2> /dev/null | cut -d- -f 2-)"
--  if [ -n "${TAG}" ]; then
--    # We're on a tag
--    echo "${TAG}${DIRTY}" > .version
--    printf "${TAG}${DIRTY}"
--    exit 0
--  fi
--  echo 'This is not a tag, either tag this commit or do not set $IS_RELEASE' >&2
--  exit 1
--fi
--
--#
--# Generate the version number based on the branch
--#
--if [ ! -z "$(git rev-parse --abbrev-ref HEAD 2> /dev/null)" ]; then
--  if $(git rev-parse --abbrev-ref HEAD | grep -q 'rel/'); then
--    REL_TYPE="$(git rev-parse --abbrev-ref HEAD | cut -d/ -f 2 | cut -d- -f 1)"
--    VERSION="$(git describe --match=${REL_TYPE}-* --tags --dirty=.dirty | cut -d- -f 2-)"
--  else
--    GIT_VERSION=$(git show --no-patch --format=format:%h HEAD)
--    BRANCH=".$(git rev-parse --abbrev-ref HEAD | perl -p -e 's/[^[:alnum:]]//g;')"
--    [ "${BRANCH}" = ".master" ] && BRANCH=''
--    VERSION="0.0${BRANCH}.${PDNS_BUILD_NUMBER}g${GIT_VERSION}${DIRTY}"
--  fi
--  echo "$VERSION" > .version
--elif [ -f .version ]; then
--  VERSION="$(cat .version)"
--fi
-+VERSION="$(cat .version)"
-
- printf $VERSION
index 9d5fd41c2c14b0ce2327a8fe23063eace2d2484b..d63d0e951bcadfca247c6923962f84d0dc157e4e 100644 (file)
@@ -22,7 +22,7 @@ include $(INCLUDE_DIR)/package.mk
 define Package/pixiewps
   SECTION:=net
   CATEGORY:=Network
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
   TITLE:=An offline WPS bruteforce utility
   URL:=https://github.com/wiire-a/pixiewps
   DEPENDS:=+libpthread
index 8894eac38d1af91472de1ca2a8be699fdc6077c7..81a2d078f9ac5ddbf669dafc51773cb33ac3563a 100644 (file)
@@ -33,7 +33,7 @@ CONFIGURE_ARGS += --enable-savetocurrent
 define Package/reaver
   SECTION:=net
   CATEGORY:=Network
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
   TITLE:=Efficient brute force attack against Wifi Protected Setup
   URL:=https://github.com/t6x/reaver-wps-fork-t6x
   DEPENDS:=+libpcap
index 8b83698d9a86b04e1f2b9556c0d137989e5aac2a..edfa732cfb306f17cda5bfcf5e5a98b3bcb4122c 100644 (file)
@@ -25,7 +25,7 @@ define Package/rp-pppoe/Default
   CATEGORY:=Network
   TITLE:=PPPoE (PPP over Ethernet)
   URL:=http://roaringpenguin.com/products/pppoe
-  SUBMENU:=dial-in/up
+  SUBMENU:=Dial-in/up
 endef
 
 define Package/rp-pppoe/Default/description
index 725a8464d1928d32a3797e21506795f316adaf69..b664b4590614fc2afbf19b9f9b557c220fef625a 100644 (file)
@@ -7,14 +7,14 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=socat
 PKG_VERSION:=1.7.3.3
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://www.dest-unreach.org/socat/download
 PKG_HASH:=0dd63ffe498168a4aac41d307594c5076ff307aa0ac04b141f8f1cec6594d04a
 
 PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
-PKG_LICENSE:=GPL-2.0 OpenSSL
+PKG_LICENSE:=GPL-2.0-or-later OpenSSL
 PKG_LICENSE_FILES:=COPYING COPYING.OpenSSL
 
 PKG_INSTALL:=1
diff --git a/net/socat/patches/100-usleep.patch b/net/socat/patches/100-usleep.patch
new file mode 100644 (file)
index 0000000..305eaf2
--- /dev/null
@@ -0,0 +1,18 @@
+--- a/sycls.c
++++ b/sycls.c
+@@ -1329,6 +1329,7 @@ unsigned int Sleep(unsigned int seconds) {
+    return retval;
+ }
++#if 0
+ /* obsolete by POSIX.1-2001 */
+ void Usleep(unsigned long usec) {
+    Debug1("usleep(%lu)", usec);
+@@ -1336,6 +1337,7 @@ void Usleep(unsigned long usec) {
+    Debug("usleep() ->");
+    return;
+ }
++#endif
+ #if HAVE_NANOSLEEP
+ unsigned int Nanosleep(const struct timespec *req, struct timespec *rem) {
index 5a45af74c9bb53153395c511442c96d60940a424..c428ae281ee077059404774a4226d242861692a1 100644 (file)
@@ -28,7 +28,7 @@ TCPREPLAY_MODULES:= \
        tcpreplay tcpreplay-edit tcprewrite
 
 define Package/tcpreplay/default
-  SUBMENU:=tcprelay
+  SUBMENU:=Tcpreplay
   SECTION:=net
   CATEGORY:=Network
   URL:=http://tcpreplay.appneta.com/
index 8634c1e7542e6f8dfd9d90970158277912a06812..cb7141cc5f2562166e2baf2137c27aac0ef97245 100644 (file)
@@ -29,7 +29,7 @@ define Package/wavemon
   CATEGORY:=Network
   TITLE:=N-curses based wireless network devices monitor
   DEPENDS:=+libncurses +libpthread +libnl-genl
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
   URL:=https://github.com/uoaerg/wavemon/releases
 endef
 
index 893b7749bf0e203eeef2fefb7ef3c7374aca4ced..45dd505380528b14a101a5f3adb6de966a6ffc7e 100644 (file)
@@ -24,7 +24,7 @@ PKG_MAINTAINER:=Nils Koenig <openwrt@newk.it>
 include $(INCLUDE_DIR)/package.mk
 
 define Package/wifischedule
-  SUBMENU:=wireless
+  SUBMENU:=Wireless
   TITLE:=Turns WiFi on and off according to a schedule
   SECTION:=net
   CATEGORY:=Network
index 68999daef3ec135e6df5579f90e055d06defdf11..9a6a55f19a093fcaa0587caf5510da09372c8768 100644 (file)
@@ -23,7 +23,7 @@ include $(INCLUDE_DIR)/package.mk
 define Package/fontconfig
   SECTION:=xorg-util
   CATEGORY:=Xorg
-  SUBMENU:=font-utils
+  SUBMENU:=Font-Utils
   TITLE:=fontconfig
   DEPENDS:=+libpthread +libexpat +libfreetype
   URL:=http://fontconfig.org/
index a861e7477e86794a7b0e6cbf210e6c4bad037738..fe3f779b2af107ec09ef9ccd0241dab65649b1ab 100644 (file)
@@ -6,7 +6,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=io
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 include $(INCLUDE_DIR)/package.mk
 
index 257205404925349de34aa397c5a116a5f1e2cf9d..51929121397b1d3fdf4a8971419d8c02b81d52f2 100644 (file)
@@ -343,7 +343,7 @@ main (int argc, char **argv)
                printf("Attempting to map 0x%lx bytes at address 0x%08lx\n",
                        real_len, real_addr);
 
-       mfd = open("/dev/mem", (memfunc == MEM_READ) ? O_RDONLY : O_RDWR);
+       mfd = open("/dev/mem", (memfunc == MEM_READ) ? (O_RDONLY | O_SYNC) : (O_RDWR | O_SYNC));
        if (mfd == -1) {
                perror("open /dev/mem");
                fprintf(stderr, "Is CONFIG_DEVMEM activated?\n");
index 8ae1ad09efb8f3b243645bc958c148efaceb5ab9..badba0725b79e6c77b31e1a291c142136262f74f 100644 (file)
@@ -235,7 +235,7 @@ define Package/mariadb/Default
   SECTION:=utils
   CATEGORY:=Utilities
   URL:=https://mariadb.org/
-  SUBMENU:=database
+  SUBMENU:=Database
 endef
 
 define Package/mariadb-client
index 8f7fa132acd616df85b59d0c97295f7e00556a66..c2a544abc17b1b48622890782b8d4bf27f10cf2e 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=prometheus
 PKG_VERSION:=2.10.0
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/prometheus/prometheus/tar.gz/v${PKG_VERSION}?
diff --git a/utils/prometheus/patches/001-update-fsnotify.patch b/utils/prometheus/patches/001-update-fsnotify.patch
new file mode 100644 (file)
index 0000000..d6f0299
--- /dev/null
@@ -0,0 +1,27 @@
+fsnotify v1.3.1 uses unix.InotifyInit, which does not exist for mips64/mips64el
+v1.4.2 changed to unix.InotifyInit1, which should exist for all Linux systems
+
+--- a/go.mod
++++ b/go.mod
+@@ -95,7 +95,7 @@ require (
+       google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19
+       google.golang.org/grpc v1.19.1
+       gopkg.in/alecthomas/kingpin.v2 v2.2.6
+-      gopkg.in/fsnotify/fsnotify.v1 v1.3.1
++      gopkg.in/fsnotify/fsnotify.v1 v1.4.7
+       gopkg.in/inf.v0 v0.9.1 // indirect
+       gopkg.in/yaml.v2 v2.2.2
+       k8s.io/api v0.0.0-20190409021203-6e4e0e4f393b
+--- a/go.sum
++++ b/go.sum
+@@ -416,8 +416,8 @@ gopkg.in/check.v1 v1.0.0-20180628173108-
+ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+ gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
+ gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
+-gopkg.in/fsnotify/fsnotify.v1 v1.3.1 h1:2fkCHbPQZNYRAyRyIV9VX0bpRkxIorlQDiYRmufHnhA=
+-gopkg.in/fsnotify/fsnotify.v1 v1.3.1/go.mod h1:Fyux9zXlo4rWoMSIzpn9fDAYjalPqJ/K1qJ27s+7ltE=
++gopkg.in/fsnotify/fsnotify.v1 v1.4.7 h1:XNNYLJHt73EyYiCZi6+xjupS9CpvmiDgjPTAjrBlQbo=
++gopkg.in/fsnotify/fsnotify.v1 v1.4.7/go.mod h1:Fyux9zXlo4rWoMSIzpn9fDAYjalPqJ/K1qJ27s+7ltE=
+ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
+ gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
+ gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
index 61eeec704580eb4f519742097384aa59ea754181..49da89fc122f0a674c617cb10efadfac9e3be1f6 100644 (file)
@@ -61,7 +61,7 @@ define Package/rrdcgi1
 $(call Package/rrdtool1/Default)
   SECTION:=utils
   CATEGORY:=Utilities
-  SUBMENU:=database
+  SUBMENU:=Database
   DEPENDS:=+librrd1
   TITLE+= CGI graphing tool
 endef
@@ -76,7 +76,7 @@ define Package/rrdtool1
 $(call Package/rrdtool1/Default)
   SECTION:=utils
   CATEGORY:=Utilities
-  SUBMENU:=database
+  SUBMENU:=Database
   DEPENDS:=+librrd1
   TITLE+= management tools
 endef
index 8b65d1a50d85c459c91b4afcb645437c57bf4005..36ebd2c2ad696eae56ce2fbb662f42f3fd46c47d 100644 (file)
@@ -9,22 +9,20 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=tar
 PKG_VERSION:=1.32
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
 PKG_HASH:=d0d3ae07f103323be809bc3eac0dcc386d52c5262499fe05511ac4788af1fdd8
 
 PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com>
-PKG_LICENSE:=GPL-3.0
+PKG_LICENSE:=GPL-3.0-or-later
 PKG_LICENSE_FILES:=COPYING
 PKG_CPE_ID:=cpe:/a:gnu:tar
 
 PKG_BUILD_PARALLEL:=1
 PKG_INSTALL:=1
 
-PKG_BUILD_DEPENDS:=xz
-
 include $(INCLUDE_DIR)/package.mk
 
 define Package/tar
@@ -49,19 +47,24 @@ define Package/tar/config
                        default y if USE_FS_ACL_ATTR
                        default n
 
-               config PACKAGE_TAR_GZIP
-                       bool "tar: Enable seamless gzip support"
-                       default y
-
                config PACKAGE_TAR_BZIP2
                        bool "tar: Enable seamless bzip2 support"
                        default y
 
+               config PACKAGE_TAR_GZIP
+                       bool "tar: Enable seamless gzip support"
+                       default y
+
                config PACKAGE_TAR_XZ
                        bool "tar: Enable seamless xz support"
                        select PACKAGE_xz-utils
                        select PACKAGE_xz
                        default y
+
+               config PACKAGE_TAR_ZSTD
+                       bool "tar: Enable seamless zstd support"
+                       select PACKAGE_libzstd
+                       default y
        endif
 endef
 
@@ -89,14 +92,16 @@ endef
 CONFIGURE_ARGS += \
        $(if $(CONFIG_PACKAGE_TAR_POSIX_ACL),--with,--without)-posix-acls \
        $(if $(CONFIG_PACKAGE_TAR_XATTR),--with,--without)-xattrs \
-       $(if $(CONFIG_PACKAGE_TAR_GZIP),--with-gzip=gzip,--without-gzip) \
        $(if $(CONFIG_PACKAGE_TAR_BZIP2),--with-bzip2=bzip2,--without-bzip2) \
+       $(if $(CONFIG_PACKAGE_TAR_GZIP),--with-gzip=gzip,--without-gzip) \
        $(if $(CONFIG_PACKAGE_TAR_XZ),--with-xz=xz,--without-xz) \
+       $(if $(CONFIG_PACKAGE_TAR_ZSTD),--with-zstd=zstd,--without-zstd) \
        --without-compress \
        --without-lzip \
        --without-lzma \
        --without-lzop \
-       --without-selinux
+       --without-selinux \
+       --disable-rpath
 
 MAKE_FLAGS += \
        CFLAGS="$(TARGET_CFLAGS)" \
index 0b94e5bdd864e08511255d9beb2ad32caa533a6d..3075b9d0065615055e18d496c419a6ff1a59fcc9 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=xz
 PKG_VERSION:=5.2.4
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@SF/lzmautils
@@ -83,6 +83,9 @@ CONFIGURE_ARGS += \
        --disable-werror \
        --with-pic
 
+CONFIGURE_VARS += \
+       gl_cv_posix_shell=/bin/sh
+
 define Build/InstallDev
        $(INSTALL_DIR) $(1)/usr/include
        $(CP) \
@@ -114,7 +117,7 @@ $(eval $(call BuildSubPackage,lzmadec, +liblzma,))
 $(eval $(call BuildSubPackage,lzmainfo, +liblzma,))
 $(eval $(call BuildSubPackage,xz, +liblzma, lzcat lzma unlzma unxz xzcat))
 $(eval $(call BuildSubPackage,xzdec, +liblzma,))
-$(eval $(call BuildSubPackage,xzdiff, +bash +xz, lzcmp lzdiff xzcmp))
-$(eval $(call BuildSubPackage,xzgrep, +bash +xz, lzegrep lzfgrep lzgrep xzegrep xzfgrep))
-$(eval $(call BuildSubPackage,xzless, +bash +xz, lzless))
-$(eval $(call BuildSubPackage,xzmore, +bash +xz, lzmore))
+$(eval $(call BuildSubPackage,xzdiff, +xz, lzcmp lzdiff xzcmp))
+$(eval $(call BuildSubPackage,xzgrep, +xz, lzegrep lzfgrep lzgrep xzegrep xzfgrep))
+$(eval $(call BuildSubPackage,xzless, +xz, lzless))
+$(eval $(call BuildSubPackage,xzmore, +xz, lzmore))