Merge pull request #22884 from gladiac/haproxy-2.8.5
authorTianling Shen <cnsztl@immortalwrt.org>
Fri, 15 Dec 2023 00:15:48 +0000 (08:15 +0800)
committerGitHub <noreply@github.com>
Fri, 15 Dec 2023 00:15:48 +0000 (08:15 +0800)
haproxy: update to v2.8.5

54 files changed:
lang/golang/golang/Makefile
lang/python/pipx/Makefile
lang/python/python-argcomplete/Makefile
lang/python/python-jsonschema-specifications/Makefile
lang/python/python-pathspec/Makefile
lang/python/python-platformdirs/Makefile
lang/python/python-referencing/Makefile
lang/python/python-typing-extensions/Makefile
lang/python/python3-version.mk
lang/python/python3/Makefile
lang/python/python3/patches/003-do-not-run-compileall.patch
lang/python/python3/patches/025-choose-python-config-version.patch
lang/python/python3/patches/100-gh-95855-Refactor-platform-triplet-detection-code-GH-107221.patch
libs/cyrus-sasl/Makefile
libs/davici/Makefile [new file with mode: 0644]
libs/libxslt/Makefile
net/adblock-fast/Makefile
net/adblock-fast/files/etc/init.d/adblock-fast
net/adguardhome/Makefile
net/adguardhome/patches/0001-go-get-github.com-quic-go-quic-go-v0.37.6.patch [deleted file]
net/banip/Makefile
net/banip/files/README.md
net/banip/files/banip-functions.sh
net/banip/files/banip.cgi [new file with mode: 0644]
net/banip/files/banip.conf
net/curl/Makefile
net/curl/patches/200-no_docs_tests.patch
net/dnsproxy/Makefile
net/https-dns-proxy/Makefile
net/https-dns-proxy/files/etc/init.d/https-dns-proxy
net/https-dns-proxy/patches/020-src-options.c-add-version.patch
net/nebula/Makefile
net/nebula/files/nebula.proto
net/sing-box/Makefile
net/snort3/Makefile
net/snowflake/Makefile
net/tgt/Makefile
net/v2ray-core/Makefile
net/v2ray-geodata/Makefile
utils/cligen/Makefile
utils/irqbalance/Makefile
utils/irqbalance/patches/010-meson.patch
utils/irqbalance/patches/020-mark-EINVAL-error-permanent.patch [new file with mode: 0644]
utils/lsof/Makefile
utils/lsof/patches/000-disable-man.patch [new file with mode: 0644]
utils/lsof/patches/001-lsof_makefile.patch [deleted file]
utils/lsof/patches/002-lsof_noportmap.patch [deleted file]
utils/lsof/patches/003-lsof_selinux.patch [deleted file]
utils/lsof/patches/004-lsof_ccv.patch [deleted file]
utils/swanmon/Makefile [new file with mode: 0644]
utils/swanmon/test.sh [new file with mode: 0644]
utils/syncthing/Makefile
utils/syncthing/files/syncthing.init
utils/yq/Makefile

index 55da6587bd4589a247e0e0925751666fd21c5459..ee99de47cf13ef64e135f3cc4166ac6a7a5edc1b 100644 (file)
@@ -8,7 +8,7 @@
 include $(TOPDIR)/rules.mk
 
 GO_VERSION_MAJOR_MINOR:=1.21
-GO_VERSION_PATCH:=4
+GO_VERSION_PATCH:=5
 
 PKG_NAME:=golang
 PKG_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
@@ -20,7 +20,7 @@ GO_SOURCE_URLS:=https://dl.google.com/go/ \
 
 PKG_SOURCE:=go$(PKG_VERSION).src.tar.gz
 PKG_SOURCE_URL:=$(GO_SOURCE_URLS)
-PKG_HASH:=47b26a83d2b65a3c1c1bcace273b69bee49a7a7b5168a7604ded3d26a37bd787
+PKG_HASH:=285cbbdf4b6e6e62ed58f370f3f6d8c30825d6e56c5853c66d3c23bcdb09db19
 
 PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
 PKG_LICENSE:=BSD-3-Clause
index cf6a3e1f566ccc7102c823d17d4c5e39f6ced2a4..f45abe5ff556899ede29a57c0d824b0ee5724bd9 100644 (file)
@@ -8,11 +8,11 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=pipx
-PKG_VERSION:=1.3.2
+PKG_VERSION:=1.3.3
 PKG_RELEASE:=1
 
 PYPI_NAME:=pipx
-PKG_HASH:=704d01d04c67c2dd0c776c5bf5ed35c7b249055b0174568b8507f07d72ed7a7f
+PKG_HASH:=6d5474e71e78c28d83570443e5418c56599aa8319a950ccf5984c5cb0a35f0a7
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=LICENSE
@@ -29,7 +29,7 @@ define Package/pipx
   CATEGORY:=Languages
   SUBMENU:=Python
   TITLE:=Install/Run Python Applications in Isolated Environments
-  URL:=https://github.com/pypa/pipx
+  URL:=https://pipx.pypa.io/
   DEPENDS:= \
     +python3-light \
     +python3-logging \
index 534131ec4bbe24eea55668099adf5e6d77949004..b725a4bb71dd924a0103b33ba7bed80a45c37ce9 100644 (file)
@@ -8,11 +8,11 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-argcomplete
-PKG_VERSION:=3.1.6
+PKG_VERSION:=3.2.1
 PKG_RELEASE:=1
 
 PYPI_NAME:=argcomplete
-PKG_HASH:=3b1f07d133332547a53c79437527c00be48cca3807b1d4ca5cab1b26313386a6
+PKG_HASH:=437f67fb9b058da5a090df505ef9be0297c4883993f3f56cb186ff087778cfb4
 
 PKG_LICENSE:=Apache-2.0
 PKG_LICENSE_FILES:=LICENSE.rst
index 88cc0ba32d8d3014b13f9e14b779a051d2e25ee3..c33f57e0a5ee018548f0cf41820f5f4f95c14028 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-jsonschema-specifications
-PKG_VERSION:=2023.7.1
+PKG_VERSION:=2023.11.2
 PKG_RELEASE:=1
 
 PYPI_NAME:=jsonschema-specifications
 PYPI_SOURCE_NAME:=jsonschema_specifications
-PKG_HASH:=c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb
+PKG_HASH:=9472fc4fea474cd74bea4a2b190daeccb5a9e4db2ea80efcf7a1b582fc9a81b8
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=COPYING
index f7aef963337487e1e7d022d5646fd6b1d35e3796..e2dcacfd32bc3a01186006a93129b2af3546e9d0 100644 (file)
@@ -8,11 +8,11 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-pathspec
-PKG_VERSION:=0.11.2
+PKG_VERSION:=0.12.1
 PKG_RELEASE:=1
 
 PYPI_NAME:=pathspec
-PKG_HASH:=e0d8d0ac2f12da61956eb2306b69f9469b42f4deb0f3cb6ed47b9cce9996ced3
+PKG_HASH:=a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712
 
 PKG_LICENSE:=MPL-2.0
 PKG_LICENSE_FILES:=LICENSE
index 620377ebe8a6a017891d5970324d450eb60fd895..cd867cd18d2068659218b8bd1ac96555838c34b4 100644 (file)
@@ -8,11 +8,11 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-platformdirs
-PKG_VERSION:=4.0.0
+PKG_VERSION:=4.1.0
 PKG_RELEASE:=1
 
 PYPI_NAME:=platformdirs
-PKG_HASH:=cb633b2bcf10c51af60beb0ab06d2f1d69064b43abf4c185ca6b28865f3f9731
+PKG_HASH:=906d548203468492d432bcb294d4bc2fff751bf84971fbb2c10918cc206ee420
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=LICENSE
index 356d2659f983ce99694609642c7aa1571f7f33a3..7575ba7717d7bbf37d82f8436328a14356b3b7ee 100644 (file)
@@ -8,11 +8,11 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-referencing
-PKG_VERSION:=0.31.1
+PKG_VERSION:=0.32.0
 PKG_RELEASE:=1
 
 PYPI_NAME:=referencing
-PKG_HASH:=81a1471c68c9d5e3831c30ad1dd9815c45b558e596653db751a2bfdd17b3b9ec
+PKG_HASH:=689e64fe121843dcfd57b71933318ef1f91188ffb45367332700a86ac8fd6161
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=COPYING
index 12abc240a5a0b3726f48e802b4db358652cb0736..501eec31f9353d69d2f21a2a2c11fa8fe47aca81 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=python-typing-extensions
-PKG_VERSION:=4.8.0
+PKG_VERSION:=4.9.0
 PKG_RELEASE:=1
 
 PYPI_NAME:=typing-extensions
 PYPI_SOURCE_NAME:=typing_extensions
-PKG_HASH:=df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef
+PKG_HASH:=23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783
 
 PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>, Jeffery To <jeffery.to@gmail.com>
 PKG_LICENSE:=Python-2.0.1 0BSD
index 6b21bc61e7ee148c1dc211f8d5d030e4469cb587..555b1804c0e2ddd4559ea0af36ec1fd61f04bb45 100644 (file)
@@ -8,7 +8,7 @@
 # Note: keep in sync with setuptools & pip
 PYTHON3_VERSION_MAJOR:=3
 PYTHON3_VERSION_MINOR:=11
-PYTHON3_VERSION_MICRO:=6
+PYTHON3_VERSION_MICRO:=7
 
 PYTHON3_VERSION:=$(PYTHON3_VERSION_MAJOR).$(PYTHON3_VERSION_MINOR)
 
index c5557057616461f56ba1d4dafa7173ad774d03f1..f34fc86951d9edd5dcdc64ab98e2e6e4fd5cfccf 100644 (file)
@@ -16,7 +16,7 @@ PKG_VERSION:=$(PYTHON3_VERSION).$(PYTHON3_VERSION_MICRO)
 
 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION)
-PKG_HASH:=0fab78fa7f133f4f38210c6260d90d7c0d5c7198446419ce057ec7ac2e6f5f38
+PKG_HASH:=18e1aa7e66ff3a58423d59ed22815a6954e53342122c45df20c96877c062b9b7
 
 PKG_MAINTAINER:=Jeffery To <jeffery.to@gmail.com>
 PKG_LICENSE:=Python-2.0.1 0BSD
index ed79314f0438f99f780b1414836aeaf771186649..7c0044ff891b7ba9c895a660c56cbedc18db758e 100644 (file)
@@ -1,6 +1,6 @@
 --- a/Makefile.pre.in
 +++ b/Makefile.pre.in
-@@ -2128,6 +2128,7 @@ libinstall:      all $(srcdir)/Modules/xxmodu
+@@ -2133,6 +2133,7 @@ libinstall:      all $(srcdir)/Modules/xxmodu
                $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
                        $(DESTDIR)$(LIBDEST)/distutils/tests ; \
        fi
@@ -8,7 +8,7 @@
        -PYTHONPATH=$(DESTDIR)$(LIBDEST)  $(RUNSHARED) \
                $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
                -j0 -d $(LIBDEST) -f \
-@@ -2155,6 +2156,7 @@ libinstall:      all $(srcdir)/Modules/xxmodu
+@@ -2160,6 +2161,7 @@ libinstall:      all $(srcdir)/Modules/xxmodu
                $(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
                -j0 -d $(LIBDEST)/site-packages -f \
                -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
index ca484f97b40753e74f7ac3e3cd5fbd61979825cb..3c74874c91ed7f6285e84033430d8e3f38e6539c 100644 (file)
@@ -1,6 +1,6 @@
 --- a/Makefile.pre.in
 +++ b/Makefile.pre.in
-@@ -2173,7 +2173,7 @@ python-config: $(srcdir)/Misc/python-con
+@@ -2178,7 +2178,7 @@ python-config: $(srcdir)/Misc/python-con
        @ # On Darwin, always use the python version of the script, the shell
        @ # version doesn't use the compiler customizations that are provided
        @ # in python (_osx_support.py).
index c3e95a3f40b0c2ac197a68a254b135daa1c33f74..8f1ae5bdc31ae97d822dd8414e9ed98c35a78919 100644 (file)
@@ -289,7 +289,7 @@ Signed-off-by: Jeffery To <jeffery.to@gmail.com>
 +#endif
 --- a/configure.ac
 +++ b/configure.ac
-@@ -917,180 +917,14 @@ fi
+@@ -925,180 +925,14 @@ fi
  
  
  AC_MSG_CHECKING([for the platform triplet based on compiler characteristics])
index 88964f5ff0a3dbe95a460c208803c9e524ca9755..b39d46c2573964c549b83358c5192da6d9c5f35b 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cyrus-sasl
 PKG_VERSION:=2.1.28
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
 
@@ -47,6 +47,12 @@ define Package/libsasl2-sasldb
   TITLE+= (sasldb libraries)
 endef
 
+define Package/libsasl2-utils
+  $(call Package/libsasl2/Default)
+  DEPENDS:=+libsasl2 +libdb47
+  TITLE+= (sasldb utilities)
+endef
+
 TARGET_CFLAGS += $(FPIC)
 CONFIGURE_ARGS += \
        --enable-shared \
@@ -132,5 +138,11 @@ define Package/libsasl2-sasldb/install
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libsasldb.so* $(1)/usr/lib/sasl2/
 endef
 
+define Package/libsasl2-utils/install
+       $(INSTALL_DIR) $(1)/usr/sbin/
+       $(CP) $(PKG_INSTALL_DIR)/usr/sbin/{pluginviewer,sasldblistusers2,saslpasswd2} $(1)/usr/sbin/
+endef
+
 $(eval $(call BuildPackage,libsasl2))
 $(eval $(call BuildPackage,libsasl2-sasldb))
+$(eval $(call BuildPackage,libsasl2-utils))
diff --git a/libs/davici/Makefile b/libs/davici/Makefile
new file mode 100644 (file)
index 0000000..54cb09c
--- /dev/null
@@ -0,0 +1,53 @@
+#
+# Copyright (C) 2023 TDT AG <development@tdt.de>
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See https://www.gnu.org/licenses/gpl-2.0.txt for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=davici
+PKG_VERSION:=1.4
+PKG_RELEASE=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://codeload.github.com/strongswan/davici/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=b03c5a1aad905e962271d70246d6af6c337ffd00449d990082ea02161327bde8
+
+PKG_MAINTAINER:=Lukas Voegl <lvoegl@tdt.de>
+PKG_LICENSE:=LGPL-2.1-or-later
+PKG_LICENSE_FILES:=COPYING
+
+PKG_FIXUP:=autoreconf
+PKG_BUILD_PARALLEL:=1
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/davici
+  SECTION:=libs
+  CATEGORY:=Libraries
+  TITLE:=Decoupled Asynchronous VICI
+  URL:=https://github.com/strongswan/davici
+endef
+
+define Package/davici/description
+  The davici library provides a client implementation of the
+  strongSwan VICI protocol for integration into external applications.
+endef
+
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/
+
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdavici.so* $(1)/usr/lib/
+endef
+
+define Package/davici/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdavici.so* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,davici))
index 1edc610b954c3230812c2acb599e368c6c4531f9..d9c0873c96dc16c47111beef1dcbdaddec57ccd8 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libxslt
-PKG_VERSION:=1.1.37
+PKG_VERSION:=1.1.39
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@GNOME/libxslt/$(basename $(PKG_VERSION))
-PKG_HASH:=3a4b27dc8027ccd6146725950336f1ec520928f320f144eb5fa7990ae6123ab4
+PKG_HASH:=2a20ad621148339b0759c4d4e96719362dee64c9a096dbba625ba053846349f0
 
 PKG_MAINTAINER:=Jiri Slachta <jiri@slachta.eu>
 PKG_LICENSE:=MIT
index 711cea1eb05a75eba546be9be971abe24bdb8c05..49defa013a9bf60c8b909149cc6dbfae6dc5d859 100644 (file)
@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=adblock-fast
 PKG_VERSION:=1.1.0
-PKG_RELEASE:=3
+PKG_RELEASE:=7
 PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
 PKG_LICENSE:=GPL-3.0-or-later
 
index 2c17caa5087e800f8e61fa03a1beb40c8be14498..a94b65415878841d477e1cc25c4ae269b1731b84 100755 (executable)
@@ -53,8 +53,9 @@ readonly unboundFile="/var/lib/unbound/adb_list.${packageName}"
 readonly unboundCache="/var/run/${packageName}/unbound.cache"
 readonly unboundGzip="${packageName}.unbound.gz"
 readonly unboundFilter='s|^|local-zone: "|;s|$|" static|'
-readonly A_TMP="/var/${packageName}.hosts.a.tmp"
-readonly B_TMP="/var/${packageName}.hosts.b.tmp"
+readonly A_TMP="/var/${packageName}.a.tmp"
+readonly B_TMP="/var/${packageName}.b.tmp"
+readonly SED_TMP="/var/${packageName}.sed.tmp"
 readonly jsonFile="/dev/shm/$packageName-status.json"
 readonly sharedMemoryError="/dev/shm/$packageName-error"
 readonly hostsFilter='/localhost/d;/^#/d;/^[^0-9]/d;s/^0\.0\.0\.0.//;s/^127\.0\.0\.1.//;s/[[:space:]]*#.*$//;s/[[:cntrl:]]$//;s/[[:space:]]//g;/[`~!@#\$%\^&\*()=+;:"'\'',<>?/\|[{}]/d;/]/d;/\./!d;/^$/d;/[^[:alnum:]_.-]/d;'
@@ -293,7 +294,8 @@ get_url_filesize() {
        [ -n "$url" ] || return 0
        is_present 'curl' || return 0
        size_command='curl --silent --insecure --fail --head --request GET'
-       size="$($size_command "$url" | grep -Po '^[cC]ontent-[lL]ength: \K\w+')"
+#      size="$($size_command "$url" | grep -Po '^[cC]ontent-[lL]ength: \K\w+')"
+       size="$($size_command "$url" | grep -Eo '^[cC]ontent-[lL]ength: (.*)' | awk '{print $2}')"
 # shellcheck disable=SC3037
        echo -en "$size"
 }
@@ -346,7 +348,7 @@ uci_changes() {
        local PACKAGE="$1"
        local CONFIG="$2"
        local OPTION="$3"
-       if [ -s "${UCI_CONFIG_DIR:-'/etc/config'}${PACKAGE}" ]; then
+       if [ -s "${UCI_CONFIG_DIR:-/etc/config/}${PACKAGE}" ]; then
                /sbin/uci ${UCI_CONFIG_DIR:+-c $UCI_CONFIG_DIR} changes "$PACKAGE${CONFIG:+.$CONFIG}${OPTION:+.$OPTION}"
        fi
 }
@@ -775,6 +777,7 @@ load_environment() {
 resolver() {
        _dnsmasq_instance_config() {
                local cfg="$1" param="$2"
+               [ -s "/etc/config/dhcp" ] || return 0
                case "$param" in
                        dnsmasq.addnhosts)
                                if [ "$(uci_get 'dhcp' "$cfg" 'serversfile')" = "$dnsmasqServersFile" ]; then
@@ -797,6 +800,7 @@ resolver() {
                esac
        }
        _smartdns_instance_config() {
+               [ -s "/etc/config/smartdns" ] || return 0
                local cfg="$1" param="$2"
                case "$param" in
                        cleanup)
@@ -835,12 +839,16 @@ resolver() {
                        rm -f "$smartdnsIpsetFile" "$smartdnsIpsetCache" "${compressed_cache_dir}/${smartdnsIpsetGzip}" "$smartdnsIpsetConfig"
                        rm -f "$smartdnsNftsetFile" "$smartdnsNftsetCache" "${compressed_cache_dir}/${smartdnsNftsetGzip}" "$smartdnsNftsetConfig"
                        rm -f "$unboundFile" "$unboundCache" "$unboundGzip"
-                       config_load 'dhcp'
-                       config_foreach _dnsmasq_instance_config 'dnsmasq' 'cleanup'
-                       uci_commit 'dhcp'
-                       config_load 'smartdns'
-                       config_foreach _smartdns_instance_config 'smartdns' 'cleanup'
-                       uci_commit 'smartdns'
+                       if [ -s "/etc/config/dhcp" ]; then
+                               config_load 'dhcp'
+                               config_foreach _dnsmasq_instance_config 'dnsmasq' 'cleanup'
+                               [ -n "$(uci_changes 'dhcp')" ] && uci_commit 'dhcp'
+                       fi
+                       if [ -s "/etc/config/smartdns" ]; then
+                               config_load 'smartdns'
+                               config_foreach _smartdns_instance_config 'smartdns' 'cleanup'
+                               [ -n "$(uci_changes 'smartdns')" ] && uci_commit 'smartdns'
+                       fi
                ;;
                on_start)
                        if [ ! -s "$outputFile" ]; then
@@ -876,7 +884,7 @@ resolver() {
                                ;;
                                smartdns.*)
                                        chmod 660 "$outputFile" "$outputConfig"
-                                       chown root:smartdns "$outputFile" "$outputConfig"
+                                       chown root:root "$outputFile" "$outputConfig"
                                        param='smartdns_restart'
                                        output_text='Restarting SmartDNS'
                                ;;
@@ -1089,12 +1097,10 @@ process_file_url() {
 }
 
 download_dnsmasq_file() {
-       local hf allow_filter j=0 R_TMP
-
        json set message "$(get_text 'statusDownloading')..."
        json set status 'statusDownloading'
 
-       rm -f "$A_TMP" "$B_TMP" "$outputFile" "$outputCache" "$outputGzip"
+       rm -f "$A_TMP" "$B_TMP" "$SED_TMP" "$outputFile" "$outputCache" "$outputGzip"
        if [ "$(get_ram_free)" -lt 32 ]; then
                output 3 'Low free memory, restarting resolver '
                if resolver 'quiet_restart'; then
@@ -1103,7 +1109,7 @@ download_dnsmasq_file() {
                        output_failn
                fi
        fi
-       touch $A_TMP; touch $B_TMP;
+       touch "$A_TMP" "$B_TMP" "$SED_TMP"
        output 1 'Downloading dnsmasq file '
        rm -f "$sharedMemoryError"
        process_file_url '' "$dnsmasq_config_file_url" 'file'
@@ -1152,14 +1158,14 @@ download_lists() {
                        return 0
                fi
        }
-       local hf allow_filter j=0 R_TMP
+       local hf j=0 R_TMP
 
        _ram_check || return 1
 
        json set message "$(get_text 'statusDownloading')..."
        json set status 'statusDownloading'
 
-       rm -f "$A_TMP" "$B_TMP" "$outputFile" "$outputCache" "$outputGzip"
+       rm -f "$A_TMP" "$B_TMP" "$SED_TMP" "$outputFile" "$outputCache" "$outputGzip"
        if [ "$(get_ram_total)" -lt 33554432 ]; then
                output 3 'Low free memory, restarting resolver '
                if resolver 'quiet_restart'; then
@@ -1168,7 +1174,7 @@ download_lists() {
                        output_failn
                fi
        fi
-       touch $A_TMP; touch $B_TMP;
+       touch "$A_TMP" "$B_TMP" "$SED_TMP"
        output 1 'Downloading lists '
        rm -f "$sharedMemoryError"
        config_load "$packageName"
@@ -1199,9 +1205,13 @@ download_lists() {
                printf "%s\n" "$(echo "$hf" | sed "$domainsFilter")" >> "$B_TMP"
        done
        allowed_domain="${allowed_domain}
-$(cat $A_TMP)"
-       for hf in ${allowed_domain}; do hf="$(echo "$hf" | sed 's/\./\\./g')"; allow_filter="$allow_filter/(^|\.)${hf}$/d;"; done
+$(sed '/^[[:space:]]*$/d' "$A_TMP")"
+       for hf in ${allowed_domain}; do
+               hf="$(echo "$hf" | sed 's/\./\\./g')"
+               echo "/(^|\.)${hf}$/d;" >> "$SED_TMP"
+       done
 
+       sed -i '/^[[:space:]]*$/d' "$B_TMP"
        [ ! -s "$B_TMP" ] && return 1
 
        output 1 'Processing downloads '
@@ -1270,10 +1280,10 @@ $(cat $A_TMP)"
                mv "$A_TMP" "$B_TMP"
        fi
 
-       if [ -n "$allow_filter" ]; then
+       if [ -s "$SED_TMP" ]; then
                output 2 'Allowing domains '
                json set message "$(get_text 'statusProcessing'): allowing domains"
-               if sed -i -E "$allow_filter" "$B_TMP"; then
+               if sed -i -E -f "$SED_TMP" "$B_TMP"; then
                        output_ok
                else
                        output_failn
@@ -1362,7 +1372,7 @@ $(cat $A_TMP)"
        fi
        output 2 'Removing temporary files '
        json set message "$(get_text 'statusProcessing'): removing temporary files"
-       rm -f "/tmp/${packageName}_tmp.*" "$A_TMP" "$B_TMP" "$outputCache" || j=1
+       rm -f "/tmp/${packageName}_tmp.*" "$A_TMP" "$B_TMP" "$SED_TMP" "$outputCache" || j=1
        if [ $j -eq 0 ]; then
                output_ok
        else
index ada453c8565a26564954801c895c00bce0c484d2..38a97c5cf33ae97e5d1b22ad324e806f37ae5247 100644 (file)
@@ -6,13 +6,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=adguardhome
-PKG_VERSION:=0.107.36
+PKG_VERSION:=0.107.42
 PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_VERSION:=v$(PKG_VERSION)
 PKG_SOURCE_URL:=https://github.com/AdguardTeam/AdGuardHome
-PKG_MIRROR_HASH:=6f32717df3654432d0c50ee730f0eef3ec806a966508f5cd82899077f1e086c8
+PKG_MIRROR_HASH:=a3ab5470960b2ba8645d6889f5b4d229e6b21201503e61e2c485666540b33806
 
 PKG_LICENSE:=GPL-3.0-only
 PKG_LICENSE_FILES:=LICENSE.txt
diff --git a/net/adguardhome/patches/0001-go-get-github.com-quic-go-quic-go-v0.37.6.patch b/net/adguardhome/patches/0001-go-get-github.com-quic-go-quic-go-v0.37.6.patch
deleted file mode 100644 (file)
index c158b23..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From 61c2e12116147fab716221009b3a14fa5792a72d Mon Sep 17 00:00:00 2001
-From: Dobroslaw Kijowski <dobo90@gmail.com>
-Date: Mon, 21 Aug 2023 10:22:27 +0200
-Subject: [PATCH] go get github.com/quic-go/quic-go@v0.37.6
-
----
- go.mod | 4 ++--
- go.sum | 4 ++++
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
---- a/go.mod
-+++ b/go.mod
-@@ -28,7 +28,7 @@ require (
-       github.com/mdlayher/raw v0.1.0
-       github.com/miekg/dns v1.1.55
-       // TODO(a.garipov): Update to â‰¥ v0.37.0 once we update to Go 1.20.
--      github.com/quic-go/quic-go v0.36.2
-+      github.com/quic-go/quic-go v0.37.6
-       github.com/stretchr/testify v1.8.4
-       github.com/ti-mo/netfilter v0.5.0
-       go.etcd.io/bbolt v1.3.7
-@@ -60,7 +60,7 @@ require (
-       github.com/pmezard/go-difflib v1.0.0 // indirect
-       github.com/quic-go/qpack v0.4.0 // indirect
-       github.com/quic-go/qtls-go1-19 v0.3.2 // indirect
--      github.com/quic-go/qtls-go1-20 v0.2.2 // indirect
-+      github.com/quic-go/qtls-go1-20 v0.3.1 // indirect
-       github.com/u-root/uio v0.0.0-20230305220412-3e8cd9d6bf63 // indirect
-       golang.org/x/mod v0.12.0 // indirect
-       golang.org/x/sync v0.3.0 // indirect
---- a/go.sum
-+++ b/go.sum
-@@ -108,8 +108,12 @@ github.com/quic-go/qtls-go1-19 v0.3.2 h1
- github.com/quic-go/qtls-go1-19 v0.3.2/go.mod h1:ySOI96ew8lnoKPtSqx2BlI5wCpUVPT05RMAlajtnyOI=
- github.com/quic-go/qtls-go1-20 v0.2.2 h1:WLOPx6OY/hxtTxKV1Zrq20FtXtDEkeY00CGQm8GEa3E=
- github.com/quic-go/qtls-go1-20 v0.2.2/go.mod h1:JKtK6mjbAVcUTN/9jZpvLbGxvdWIKS8uT7EiStoU1SM=
-+github.com/quic-go/qtls-go1-20 v0.3.1 h1:O4BLOM3hwfVF3AcktIylQXyl7Yi2iBNVy5QsV+ySxbg=
-+github.com/quic-go/qtls-go1-20 v0.3.1/go.mod h1:X9Nh97ZL80Z+bX/gUXMbipO6OxdiDi58b/fMC9mAL+k=
- github.com/quic-go/quic-go v0.36.2 h1:ZX/UNQ4gvpCv2RmwdbA6lrRjF6EBm5yZ7TMoT4NQVrA=
- github.com/quic-go/quic-go v0.36.2/go.mod h1:zPetvwDlILVxt15n3hr3Gf/I3mDf7LpLKPhR4Ez0AZQ=
-+github.com/quic-go/quic-go v0.37.6 h1:2IIUmQzT5YNxAiaPGjs++Z4hGOtIR0q79uS5qE9ccfY=
-+github.com/quic-go/quic-go v0.37.6/go.mod h1:YsbH1r4mSHPJcLF4k4zruUkLBqctEMBDR6VPvcYjIsU=
- github.com/shirou/gopsutil/v3 v3.21.8 h1:nKct+uP0TV8DjjNiHanKf8SAuub+GNsbrOtM9Nl9biA=
- github.com/shirou/gopsutil/v3 v3.21.8/go.mod h1:YWp/H8Qs5fVmf17v7JNZzA0mPJ+mS2e9JdiUF9LlKzQ=
- github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
index 28b76bc86aa0de6bbfc18afe59cbe9763af18c52..00803da00cd43705fb7d6e9ffec08343c8bb6fce 100644 (file)
@@ -5,8 +5,8 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=banip
-PKG_VERSION:=0.9.2
-PKG_RELEASE:=4
+PKG_VERSION:=0.9.3
+PKG_RELEASE:=1
 PKG_LICENSE:=GPL-3.0-or-later
 PKG_MAINTAINER:=Dirk Brenken <dev@brenken.org>
 
@@ -63,6 +63,9 @@ define Package/banip/install
        $(INSTALL_CONF) ./files/banip.countries $(1)/etc/banip
        $(INSTALL_CONF) ./files/banip.feeds $(1)/etc/banip
        $(INSTALL_CONF) ./files/banip.custom.feeds $(1)/etc/banip
+
+       $(INSTALL_DIR) $(1)/www/cgi-bin
+       $(INSTALL_BIN) ./files/banip.cgi $(1)/www/cgi-bin/banip
 endef
 
 $(eval $(call BuildPackage,banip))
index eb5e8cf65cc8bb091c4f3cdbdf49327fa3fe5296..299a2cae8ee2611fad28bc6bd2f617a92d9882fb 100644 (file)
@@ -89,6 +89,7 @@ IP address blocking is commonly used to protect against brute force attacks, pre
 * Add new or edit existing banIP feeds on your own with the LuCI integrated custom feed editor
 * Supports external allowlist URLs to reference additional IPv4/IPv6 feeds
 * Supports allowing / blocking of certain VLAN forwards
+* Provides an option to transfer logging events on remote servers via cgi interface
 
 ## Prerequisites
 * **[OpenWrt](https://openwrt.org)**, latest stable release or a snapshot with nft/firewall 4 support
@@ -141,7 +142,7 @@ Available commands:
 | ban_filelimit           | option | 1024                          | ulimit max open/number of files (range 1024-4096)                                                                 |
 | ban_loglimit            | option | 100                           | scan only the last n log entries permanently. A value of '0' disables the monitor                                 |
 | ban_logcount            | option | 1                             | how many times the IP must appear in the log to be considered as suspicious                                       |
-| ban_logterm             | list   | regex                         | various regex for logfile parsing (default: dropbear, sshd, luci, nginx, asterisk)                                |
+| ban_logterm             | list   | regex                         | various regex for logfile parsing (default: dropbear, sshd, luci, nginx, asterisk and cgi-remote events)          |
 | ban_logreadfile         | option | /var/log/messages             | alternative location for parsing the log file, e.g. via syslog-ng, to deactivate the standard parsing via logread |
 | ban_autodetect          | option | 1                             | auto-detect wan interfaces, devices and subnets                                                                   |
 | ban_debug               | option | 0                             | enable banIP related debug logging                                                                                |
@@ -191,6 +192,8 @@ Available commands:
 | ban_mailnotification    | option | 0                             | receive E-Mail notifications with every banIP run                                                                 |
 | ban_reportelements      | option | 1                             | count Set elements in the report, disable this option to speed up the report significantly                        |
 | ban_resolver            | option | -                             | external resolver used for DNS lookups                                                                            |
+| ban_remotelog           | option | 0                             | enable the cgi interface to receive remote logging events                                                         |
+| ban_remotetoken         | option | -                             | unique token to communicate with the cgi interface                                                                |
 
 ## Examples
 **banIP report information**  
@@ -292,6 +295,7 @@ list ban_logterm 'luci: failed login'
 list ban_logterm 'error: maximum authentication attempts exceeded'
 list ban_logterm 'sshd.*Connection closed by.*\[preauth\]'
 list ban_logterm 'SecurityEvent=\"InvalidAccountID\".*RemoteAddress='
+list ban_logterm 'received a suspicious remote IP '\''.*'\'''
 ```
 
 **allow-/blocklist handling**  
@@ -324,6 +328,18 @@ MAC-address with IPv4 and IPv6 wildcard concatenation:
 C8:C2:9B:F7:80:12 192.168.1.10                     => this will be populated to v4MAC-Set with the certain IP
 C8:C2:9B:F7:80:12                                  => this will be populated to v6MAC-Set with the IP-wildcard ::/0
 ```
+**enable the cgi interface to receive remote logging events**  
+banIP ships a basic cgi interface in '/www/cgi-bin/banip' to receive remote logging events (disabled by default). The cgi interface evaluates logging events via GET or POST request (see examples below). To enable the cgi interface set the following options:  
+
+    * set 'ban_remotelog' to '1' to enbale the cgi interface
+    * set 'ban_remotetoken' to a secret transfer token, allowed token characters consist of '[A-Za-z]', '[0-9]', '.' and ':'
+
+  Examples to transfer remote logging events from an internal server to banIP via cgi interface:  
+
+    * POST request: curl --insecure --data "<ban_remotetoken>=<suspicious IP>" https://192.168.1.1/cgi-bin/banip
+    * GET request: wget --no-check-certificate https://192.168.1.1/cgi-bin/banip?<ban_remotetoken>=<suspicious IP>
+
+Please note: for security reasons use this cgi interface only internally and only encrypted via https transfer protocol.
 
 **redirect Asterisk security logs to lodg/logread**  
 banIP only supports logfile scanning via logread, so to monitor attacks on Asterisk, its security log must be available via logread. To do this, edit '/etc/asterisk/logger.conf' and add the line 'syslog.local0 = security', then run 'asterisk -rx reload logger' to update the running Asterisk configuration.
index 1a1266d03554897813d0fe15110bb9825de9a2b6..f075eb6b1385ed5e29c63a6cfb34e0fe7e1e50e5 100644 (file)
@@ -43,6 +43,8 @@ ban_mailtopic="banIP notification"
 ban_mailprofile="ban_notify"
 ban_mailnotification="0"
 ban_reportelements="1"
+ban_remotelog="0"
+ban_remotetoken=""
 ban_nftloglevel="warn"
 ban_nftpriority="-200"
 ban_nftpolicy="memory"
@@ -1526,7 +1528,7 @@ f_monitor() {
                                        ip="${ip##* }"
                                        [ -n "${ip}" ] && proto="v6"
                                fi
-                               if [ -n "${proto}" ] && ! "${ban_nftcmd}" get element inet banIP blocklist"${proto}" "{ ${ip} }" >/dev/null 2>&1 && ! "${ban_grepcmd}" -q "^${ip}" "${ban_allowlist}"; then
+                               if [ -n "${proto}" ] && ! "${ban_nftcmd}" get element inet banIP allowlist"${proto}" "{ ${ip} }" >/dev/null 2>&1 && ! "${ban_nftcmd}" get element inet banIP blocklist"${proto}" "{ ${ip} }" >/dev/null 2>&1; then
                                        f_log "info" "suspicious IP '${ip}'"
                                        log_raw="$(eval ${loglimit_cmd})"
                                        log_count="$(printf "%s\n" "${log_raw}" | "${ban_grepcmd}" -c "suspicious IP '${ip}'")"
diff --git a/net/banip/files/banip.cgi b/net/banip/files/banip.cgi
new file mode 100644 (file)
index 0000000..2ac5ef0
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh
+# banIP cgi remote logging script - ban incoming and outgoing IPs via named nftables Sets
+# Copyright (c) 2018-2023 Dirk Brenken (dev@brenken.org)
+# This is free software, licensed under the GNU General Public License v3.
+
+# (s)hellcheck exceptions
+# shellcheck disable=all
+
+# handle post/get requests
+#
+post_string="$(cat)"
+request="${post_string//[^[:alnum:]=\.\:]/}"
+[ -z "${request}" ] && request="${QUERY_STRING//[^[:alnum:]=\.\:]/}"
+
+request_decode() {
+       local key value token
+
+       key="${request%=*}"
+       value="${request#*=}"
+       token="$(uci -q get banip.global.ban_remotetoken)"
+
+       if [ -n "${key}" ] && [ -n "${value}" ] && [ "${key}" = "${token}" ] && /etc/init.d/banip running; then
+               [ -r "/usr/lib/banip-functions.sh" ] && { . "/usr/lib/banip-functions.sh"; f_conf; }
+               if [ "${ban_remotelog}" = "1" ] && [ -x "${ban_logreadcmd}" ] && [ -n "${ban_logterm%%??}" ] && [ "${ban_loglimit}" != "0" ]; then
+                       f_log "info" "received a suspicious remote IP '${value}'"
+               fi
+       fi
+}
+
+cat <<EOF
+Status: 202 Accepted
+Content-Type: text/plain; charset=UTF-8
+
+EOF
+
+request_decode
index eaa30989eaa38a6ef47d968bc9ab4dc4823c0c5c..3bb5bc96c710e3b8437f06aa92c864f3bbfd46bf 100644 (file)
@@ -7,3 +7,4 @@ config banip 'global'
        list ban_logterm 'error: maximum authentication attempts exceeded'
        list ban_logterm 'sshd.*Connection closed by.*\[preauth\]'
        list ban_logterm 'SecurityEvent=\"InvalidAccountID\".*RemoteAddress='
+       list ban_logterm 'received a suspicious remote IP '\''.*'\'''
index ccb431e91f9df248cc8b3b940c7e6c2252850529..c41e9ee57a5fd7d54bfd859d01ae9f335b91edda 100644 (file)
@@ -9,15 +9,15 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/nls.mk
 
 PKG_NAME:=curl
-PKG_VERSION:=8.4.0
-PKG_RELEASE:=2
+PKG_VERSION:=8.5.0
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=https://github.com/curl/curl/releases/download/curl-$(subst .,_,$(PKG_VERSION))/ \
        https://dl.uxnr.de/mirror/curl/ \
        https://curl.askapache.com/download/ \
        https://curl.se/download/
-PKG_HASH:=e5250581a9c032b1b6ed3cf2f9c114c811fc41881069e9892d115cc73f9e88c6
+PKG_HASH:=ce4b6a6655431147624aaf582632a36fe1ade262d5fab385c60f78942dd8d87b
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=COPYING
index d3a5cca61380f475a0c193552842c231343c3469..38f323e26b59e42f59b9a6afab3e45de65a91091 100644 (file)
@@ -1,6 +1,6 @@
 --- a/Makefile.am
 +++ b/Makefile.am
-@@ -159,7 +159,7 @@ CLEANFILES = $(VC10_LIBVCXPROJ) $(VC10_S
+@@ -134,7 +134,7 @@ CLEANFILES = $(VC14_LIBVCXPROJ) \
  bin_SCRIPTS = curl-config
  
  SUBDIRS = lib src
@@ -9,7 +9,7 @@
  
  pkgconfigdir = $(libdir)/pkgconfig
  pkgconfig_DATA = libcurl.pc
-@@ -273,8 +273,6 @@ cygwinbin:
+@@ -248,8 +248,6 @@ cygwinbin:
  # We extend the standard install with a custom hook:
  install-data-hook:
        (cd include && $(MAKE) install)
index 1a8a6441d5f053fdbc766fcbfeaa864a98ac0032..6ac9079818a67958f76d115b2b8d3a7294b29303 100644 (file)
@@ -5,12 +5,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=dnsproxy
-PKG_VERSION:=0.59.1
+PKG_VERSION:=0.60.1
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/AdguardTeam/dnsproxy/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=151616e2562b9bc8de85725293b264e7769d84fe1cd462e74be6fdc8505b0cbb
+PKG_HASH:=4af8d4b0fd5522c41b9370bd2fe102af8fcaa2b48bd6664d1252b55a6d2fe8d4
 
 PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
 PKG_LICENSE:=Apache-2.0
index 69b6bbe8783e3e2faf9c5106543d82260862518e..d290ef7b5f5fb42757f96aa8a185373abcd640d9 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=https-dns-proxy
 PKG_VERSION:=2023-10-25
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/aarond10/https_dns_proxy/
index c9e38cca9ae7def6f7bcdde77f03730a6c6034f3..0a11111c5705a8b58d2af04dc2703230a15d04a5 100755 (executable)
@@ -31,6 +31,7 @@ readonly canaryDomainsiCloud='mask.icloud.com mask-h2.icloud.com'
 on_boot_trigger=
 
 dnsmasq_restart() { [ -x /etc/init.d/dnsmasq ] || return 1; /etc/init.d/dnsmasq restart >/dev/null 2>&1; }
+is_fw4_restart_needed() { [ "$(uci_get "$packageName" 'config' 'force_dns' '1')" = '1' ]; }
 is_mac_address() { expr "$1" : '[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]$' >/dev/null; }
 is_ipv4() { expr "$1" : '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$' >/dev/null; }
 is_ipv6() { ! is_mac_address "$1" && str_contains "$1" ":"; }
@@ -168,7 +169,7 @@ start_instance() {
        json_add_object mdns
                procd_add_mdns_service "$packageName" 'udp' "$port" "DNS over HTTPS proxy"
        json_close_object
-       if [ "$force_dns" -ne 0 ]; then
+       if [ "$force_dns" -ne '0' ]; then
                json_add_array firewall
                for iface in $procd_fw_src_interfaces; do
                        for p in $force_dns_port; do
@@ -218,7 +219,7 @@ start_instance() {
                fi
                output_ok
                port="$((port+1))"
-               force_dns=0
+               force_dns='0'
        else
                output_fail
        fi
@@ -318,8 +319,8 @@ service_triggers() {
        procd_add_config_trigger "config.change" "$packageName" "/etc/init.d/${packageName}" reload 'on_config_change'
 }
 
-service_started() { procd_set_config_changed firewall; }
-service_stopped() { procd_set_config_changed firewall; }
+service_started() { is_fw4_restart_needed && procd_set_config_changed firewall; }
+service_stopped() { is_fw4_restart_needed && procd_set_config_changed firewall; }
 restart() { procd_send_signal "$packageName"; rc_procd start_service "$*"; }
 
 dnsmasq_doh_server() {
@@ -339,7 +340,7 @@ dnsmasq_doh_server() {
                        uci_add_list_if_new 'dhcp' "$cfg" 'doh_server' "${address}#${port}"
                ;;
                remove)
-                       for i in $(uci -q get "dhcp.$cfg.doh_server"); do
+                       for i in $(uci_get 'dhcp' "$cfg" 'doh_server'); do
                                uci_remove_list 'dhcp' "$cfg" 'server' "$i"
                                uci_remove_list 'dhcp' "$cfg" 'doh_server' "$i"
                        done
index 8f3b9dfa24e0ab441db6b75468802d1fd1e96c5f..993a9b8d32dc2d5dc859a28d66d2ce0f7a3597c5 100644 (file)
@@ -5,7 +5,7 @@
    return SW_VERSION;
  #else
 -  return "2023.10.10-atLeast";  // update date sometimes, like 1-2 times a year
-+  return "2023-10-25-4";  // update date sometimes, like 1-2 times a year
++  return "2023-10-25-5";  // update date sometimes, like 1-2 times a year
  #endif
  }
  
index 6d98fa2382db6f81b70d38a8606e2d1978325beb..bef27143b71efb917f304396dbe8b5d1c3a98e20 100644 (file)
@@ -4,12 +4,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=nebula
-PKG_VERSION:=1.7.2
+PKG_VERSION:=1.8.0
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/slackhq/nebula/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=c4771ce6eb3e142f88f5f4c12443cfca140bf96b2746c74f9536bd1a362f3f88
+PKG_HASH:=678ad2bda47258cce8c2d14b3fa56d17c0ba4f894d75b75afab8937d64e12da7
 
 PKG_MAINTAINER:=Stan Grishin <stangri@melmac.ca>
 PKG_LICENSE:=MIT
@@ -51,6 +51,9 @@ define Package/nebula-proto
   TITLE:=nebula-proto
   URL:=https://docs.openwrt.melmac.net/nebula/
   DEPENDS:=nebula
+       DEPENDS+=+!BUSYBOX_DEFAULT_AWK:gawk
+       DEPENDS+=+!BUSYBOX_DEFAULT_GREP:grep
+       DEPENDS+=+!BUSYBOX_DEFAULT_SED:sed
   PKGARCH:=all
 endef
 
@@ -60,6 +63,8 @@ define Package/nebula-service
   TITLE:=nebula-service
   URL:=https://docs.openwrt.melmac.net/nebula/
   DEPENDS:=nebula
+       DEPENDS+=+!BUSYBOX_DEFAULT_AWK:gawk
+       DEPENDS+=+!BUSYBOX_DEFAULT_SED:sed
        CONFLICTS:=nebula-proto
   PKGARCH:=all
 endef
@@ -69,28 +74,28 @@ define Build/Compile
 endef
 
 define Package/nebula/description
-  Nebula is a scalable overlay networking tool with a focus on performance, simplicity
-  and security. It lets you seamlessly connect computers anywhere in the world.
-  This package contains only nebula binary. Unless you want to start nebula manually,
-  you may want to also install *either* 'nebula-service' *or* 'nebula-proto' package.
+Nebula is a scalable overlay networking tool with a focus on performance, simplicity
+and security. It lets you seamlessly connect computers anywhere in the world.
+This package contains only nebula binary. Unless you want to start nebula manually,
+you may want to also install *either* 'nebula-service' *or* 'nebula-proto' package.
 endef
 
 define Package/nebula-cert/description
-  Nebula is a scalable overlay networking tool with a focus on performance, simplicity
-  and security. It lets you seamlessly connect computers anywhere in the world.
-  This package contains only nebula-cert binary.
+Nebula is a scalable overlay networking tool with a focus on performance, simplicity
+and security. It lets you seamlessly connect computers anywhere in the world.
+This package contains only nebula-cert binary.
 endef
 
 define Package/nebula-proto/description
-  Nebula is a scalable overlay networking tool with a focus on performance, simplicity
-  and security. It lets you seamlessly connect computers anywhere in the world.
-  This package contains only OpenWrt protocol/interface support for nebula.
+Nebula is a scalable overlay networking tool with a focus on performance, simplicity
+and security. It lets you seamlessly connect computers anywhere in the world.
+This package contains only OpenWrt protocol/interface support for nebula.
 endef
 
 define Package/nebula-service/description
-  Nebula is a scalable overlay networking tool with a focus on performance, simplicity
-  and security. It lets you seamlessly connect computers anywhere in the world.
-  This package contains only OpenWrt-specific init.d script for nebula.
+Nebula is a scalable overlay networking tool with a focus on performance, simplicity
+and security. It lets you seamlessly connect computers anywhere in the world.
+This package contains only OpenWrt-specific init.d script for nebula.
 endef
 
 define Package/nebula/install
index b77be1254a6f5f1162726b0f09f90aed026a527a..c8f4991afa0f0641da3885be4bfa2ea43b0aa8dd 100644 (file)
@@ -49,6 +49,7 @@ proto_nebula_setup() {
 
        [ -s "$config_file" ] || { log "Config file not found or empty!"; return 1; }
        eval "$(yaml_parse "$config_file" "yaml_")"
+       yaml_tun_dev="${yaml_tun_dev%"${yaml_tun_dev##*[![:space:]]}"}"
        [ "$yaml_tun_dev" = "$interface" ] || { log "Tunnel device in config file (${yaml_tun_dev}) doesn't match interface name (${interface})!"; return 1; }
 
        log "Setting up ${interface} from $(basename "$config_file")."
@@ -71,7 +72,7 @@ proto_nebula_setup() {
        json_close_array
        proto_close_data
        addresses="$(ip -4 a list dev "$interface" 2>/dev/null | grep inet | awk '{print $2}' | awk -F "/" '{print $1}')"
-       log "Running ${interface} from $(basename "$config_file") with addresses: ${addresses}."
+       log "Running ${interface} from $(basename "$config_file")${addresses+:  with addresses: $addresses}."
        for address in ${addresses}; do
                case "${address}" in
                        *:*/*)
index 5d491c3226f513b1f19ebaa12b39b799895f14d0..3bd577e8f8a1bfa66893c5825ea7aeb225b35069 100644 (file)
@@ -1,12 +1,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=sing-box
-PKG_VERSION:=1.6.6
+PKG_VERSION:=1.7.4
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/SagerNet/sing-box/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=88c8825f6e8af2e46a16e8a85ceb5e1c7c0795b59cad93c8327288ec7b8249e0
+PKG_HASH:=483c7188f054dffc37211a4c6d50edc7473f9cbbe57c5687bb3551aba3919e52
 
 PKG_LICENSE:=GPL-3.0-or-later
 PKG_LICENSE_FILES:=LICENSE
index 3f4df0996783e0b686e67a09bd5bfcaec63af5a9..2cd80567e22ef3db9393665f84532e3b97b96372 100644 (file)
@@ -6,14 +6,14 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=snort3
-PKG_VERSION:=3.1.75.0
-PKG_RELEASE:=3
+PKG_VERSION:=3.1.76.0
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/snort3/snort3/archive/refs/tags/
-PKG_HASH:=c1a1b7d00df5ab45df968f0fb0125eba95bad27c181018b8d68a41e1bb6fc111
+PKG_HASH:=5586199be8b7a7c6a1b73e0af2e2e004db8417b8282668b10583071e35c9c7a9
 
-PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
+PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>, John Audia <therealgraysky@proton.me>
 PKG_LICENSE:=GPL-2.0-only
 PKG_LICENSE_FILES:=COPYING
 PKG_CPE_ID:=cpe:/a:snort:snort
index c23fd87dd33e270140640fab97024a369fb5b432..56019d076c22c5eef9b500ffc35612dee702ae3d 100644 (file)
@@ -1,13 +1,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=snowflake
-PKG_VERSION:=2.7.0
+PKG_VERSION:=2.8.0
 PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
 PKG_SOURCE_VERSION:=v$(PKG_VERSION)
-PKG_MIRROR_HASH:=3156dbeffaea82761372c7e64322cf9c24a05894c54ccb0d80eaed61b54e08c6
+PKG_MIRROR_HASH:=20ff3c292be6d91f535b009b95578d708daeb8b88cc2290e69feade7b844bf60
 
 PKG_LICENSE:=BSD-3-Clause
 PKG_LICENSE_FILES:=LICENSE
index 70ff9a1ea28fdafd313c5f645e2aa10509c9fdbe..1e8af2cc9edc2e29c3e62b0d7e166402748ef391 100644 (file)
@@ -4,12 +4,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=tgt
-PKG_VERSION:=1.0.87
+PKG_VERSION:=1.0.89
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/fujita/tgt/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=975bb23b4762f2e2a8e787b79afa7fb44442c5afabaea0e469fca0169826077a
+PKG_HASH:=cd09daffacc00a6641a7b95d31c43441656ce0b01af8d512359bc91bac3c6d99
 
 PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
 PKG_LICENSE:=GPL-2.0-only
index 21737dd37f112df3b94132aa98093d953b404937..b23ae025e8840951b4750af6100a5247712ebcd6 100644 (file)
@@ -5,12 +5,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=v2ray-core
-PKG_VERSION:=5.12.1
+PKG_VERSION:=5.13.0
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/v2fly/v2ray-core/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=fa1845d42b46c6b5046a8f95d49cc7a9175e40efc5c13b95174b4c556567aca1
+PKG_HASH:=6b2eb6286c99da010db5c5f629f950e753fc4addeed189d3d898c1ef56d5a785
 
 PKG_LICENSE:=MIT
 PKG_LICENSE_FILES:=LICENSE
index b61769c56d612e47784c8745fcb9cb994d01a2dc..144bc218bad702a8ed393bf3b5c85f9d06df5bc2 100644 (file)
@@ -12,31 +12,31 @@ PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
 
 include $(INCLUDE_DIR)/package.mk
 
-GEOIP_VER:=202311160040
+GEOIP_VER:=202312071808
 GEOIP_FILE:=geoip.dat.$(GEOIP_VER)
 define Download/geoip
   URL:=https://github.com/v2fly/geoip/releases/download/$(GEOIP_VER)/
   URL_FILE:=geoip.dat
   FILE:=$(GEOIP_FILE)
-  HASH:=fe44648629b12e4818eae1a9f703e83f02261e7dcc91b06edf531f343bf16170
+  HASH:=1c8d8bd5e8966a115d2ba16739660ef8ea1ebbb812fec4f87c699df479721652
 endef
 
-GEOSITE_VER:=20231118232758
+GEOSITE_VER:=20231212122459
 GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER)
 define Download/geosite
   URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/
   URL_FILE:=dlc.dat
   FILE:=$(GEOSITE_FILE)
-  HASH:=91844afa5918b0465b2ffaaf9ee35d09bffd0a2b47b669afdf77ff576262b048
+  HASH:=954adf9b4e999839073715566ab5df3f2177ad97741ce78dcea9b0795ef30614
 endef
 
-GEOSITE_IRAN_VER:=202311130025
+GEOSITE_IRAN_VER:=202312110026
 GEOSITE_IRAN_FILE:=iran.dat.$(GEOSITE_IRAN_VER)
 define Download/geosite-ir
   URL:=https://github.com/bootmortis/iran-hosted-domains/releases/download/$(GEOSITE_IRAN_VER)/
   URL_FILE:=iran.dat
   FILE:=$(GEOSITE_IRAN_FILE)
-  HASH:=286b48d780010349ce759daba30a05e550ea7e3f45082026d2e5f53803223f90
+  HASH:=0f5a1c31c0b905d6619d5b917a1031defb17f5a556e604327d9bc49ee3de962f
 endef
 
 define Package/v2ray-geodata/template
index 40a058fe251e80ba7e6265de8b66ddd41c6b32ea..f15d9cd4eff64619d3d3f459169be95317f28031 100644 (file)
@@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cligen
 PKG_VERSION:=6.5.0
-PKG_RELEASE:=1
-PKG_MAINTAINER:=Olof Hagsand <olof@hagsand.se>, Philip Prindeville <philipp@redfish-solutions.com>
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/clicon/$(PKG_NAME)/tar.gz/$(PKG_VERSION)?
 PKG_HASH:=8b3943430f7aa9eea6a5f7cf1ace5b68eb382380cf68f41ae3ef5e032e08816f
 
+PKG_MAINTAINER:=Olof Hagsand <olof@hagsand.se>, Philip Prindeville <philipp@redfish-solutions.com>
 PKG_LICENSE:=Apache-2.0
 PKG_LICENSE_FILES:=LICENSE.md
 
@@ -32,7 +32,8 @@ define Package/cligen
 endef
 
 define Package/cligen/description
-  CLIgen is a Command-Line Interface generator
+  CLIgen provides dynamic CLI interpretation from grammar files
+  handled at run-time.
 endef
 
 CONFIGURE_ARGS+= \
index 23d4b3899ddd77dea38f4410c9784757a8725f0f..83f07da8494445c9ced1b2b187cff4142e8bfffb 100644 (file)
@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=irqbalance
 PKG_VERSION:=1.9.3
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/Irqbalance/irqbalance.git
index 7e3ae36d82afd98d566646993061795d7e248860..71a8ebae7f1ce3eaea7856bf01d44bb2dbc42031 100644 (file)
@@ -4,6 +4,9 @@ Date: Fri, 10 Jun 2022 23:14:27 -0700
 Subject: [PATCH] add meson
 
 Signed-off-by: Rosen Penev <rosenp@gmail.com>
+
+[update version string to 1.9.3]
+
 ---
  meson.build       | 43 +++++++++++++++++++++++++++++++++++++++++++
  meson_options.txt | 11 +++++++++++
@@ -15,7 +18,7 @@ Signed-off-by: Rosen Penev <rosenp@gmail.com>
 +++ b/meson.build
 @@ -0,0 +1,43 @@
 +project('irqbalance', 'c',
-+  version : '1.9.0',
++  version : '1.9.3',
 +  default_options : ['warning_level=1']
 +)
 +
diff --git a/utils/irqbalance/patches/020-mark-EINVAL-error-permanent.patch b/utils/irqbalance/patches/020-mark-EINVAL-error-permanent.patch
new file mode 100644 (file)
index 0000000..44eb15d
--- /dev/null
@@ -0,0 +1,15 @@
+--- a/activate.c
++++ b/activate.c
+@@ -98,11 +98,11 @@ error:
+       case ENOSPC: /* Specified CPU APIC is full. */
+       case EAGAIN: /* Interrupted by signal. */
+       case EBUSY: /* Affinity change already in progress. */
+-      case EINVAL: /* IRQ would be bound to no CPU. */
+       case ERANGE: /* CPU in mask is offline. */
+       case ENOMEM: /* Kernel cannot allocate CPU mask. */
+               /* Do not blacklist the IRQ on transient errors. */
+               break;
++      case EINVAL: /* IRQ would be bound to no CPU. */
+       default:
+               /* Any other error is considered permanent. */
+               info->flags |= IRQ_FLAG_AFFINITY_UNMANAGED;
index a49b053c49025105e30a4f6a6cc27c6f6bd73c9e..11a774dce608bfd928f9156bf1ad7312b16a112a 100644 (file)
@@ -1,6 +1,4 @@
 #
-# Copyright (C) 2007-2015 OpenWrt.org
-#
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
@@ -9,17 +7,17 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=lsof
-PKG_VERSION:=4.94.0
+PKG_VERSION:=4.99.0
 PKG_RELEASE:=1
 
-PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).linux.tar.bz2
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/lsof-org/lsof/releases/download/$(PKG_VERSION)
-PKG_HASH:=c41709c2543ecf9de1e950795790a9786a2f225e51c3cc53d6a9a256f872472b
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)_$(PKG_VERSION).linux
+PKG_HASH:=180e6284aff184d94d273e34f7264edc2af849c07b1c5d6a4183d4d402734245
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 
 PKG_MAINTAINER:=Maxim Storchak <m.storchak@gmail.com>
 PKG_LICENSE:=Unique
-PKG_LICENSE_FILES:=00README
+PKG_LICENSE_FILES:=COPYING
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -31,36 +29,7 @@ define Package/lsof
   URL:=http://people.freebsd.org/~abe/
 endef
 
-ifneq ($(CONFIG_IPV6),n)
-  LINUX_CLIB_IPV6=-DHASIPv6
-else
-  LINUX_CLIB_IPV6=
-endif
-
-TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include/tirpc
-TARGET_LDFLAGS += -ltirpc
-
-define Build/Configure
-       $(SED) 's/rpc\/rpc/\/tirpc\/rpc\/rpc/g' $(PKG_BUILD_DIR)/Configure
-       cd $(PKG_BUILD_DIR); \
-               LINUX_CLIB="-DGLIBCV=2 $(LINUX_CLIB_IPV6)" \
-               LSOF_CC="$(TARGET_CC)" \
-               LSOF_VSTR="$(LINUX_VERSION)" \
-               LSOF_CFGF="$(TARGET_CFLAGS)" \
-               LSOF_CFGL="$(TARGET_LDFLAGS)" \
-               LSOF_AR="$(TARGET_CROSS)ar cr" \
-               LSOF_RANLIB="$(TARGET_CROSS)ranlib" \
-               LSOF_INCLUDE="$(STAGING_DIR)/usr/include" \
-               ./Configure -n linux
-endef
-
-define Build/Compile
-       LSOF_HOST="none" \
-       LSOF_LOGNAME="none" \
-       LSOF_SYSINFO="none" \
-       LSOF_USER="none" \
-       $(MAKE) -C $(PKG_BUILD_DIR)
-endef
+CONFIGURE_ARGS += --without-selinux
 
 define Package/lsof/install
        $(INSTALL_DIR) $(1)/usr/bin
diff --git a/utils/lsof/patches/000-disable-man.patch b/utils/lsof/patches/000-disable-man.patch
new file mode 100644 (file)
index 0000000..cf9a391
--- /dev/null
@@ -0,0 +1,18 @@
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -208,13 +208,8 @@ EXTRA_DIST += 00.README.FIRST 00CREDITS
+ # Testing
+ EXTRA_DIST += tests/00README tests/TestDB tests/CkTestDB tests/Makefile tests/LsofTest.h check.bash
+-# Manpages
+-lsof.man: Lsof.8 version 00DIALECTS
+-      soelim < Lsof.8 > $@
+-man8_MANS = lsof.man
+-EXTRA_DIST += Lsof.8
+ # Fix distcheck error
+ clean-local:
+       rm -rf lsof.man
+ distclean-local:
+-      rm -rf lockf_owner.h lockf.h
+\ No newline at end of file
++      rm -rf lockf_owner.h lockf.h
diff --git a/utils/lsof/patches/001-lsof_makefile.patch b/utils/lsof/patches/001-lsof_makefile.patch
deleted file mode 100644 (file)
index eb2b735..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/lib/Makefile.skel
-+++ b/lib/Makefile.skel
-@@ -21,8 +21,8 @@ OBJ= ckkv.o cvfs.o dvch.o fino.o isfn.o
- all:  ${LIB}
- ${LIB}:       ${OBJ}
--      ${AR}
--      ${RANLIB}
-+      ${AR} ${LIB} ${OBJ}
-+      ${RANLIB} ${LIB}
- clean:        FRC
-       rm -f ${LIB} ${OBJ} errs Makefile.bak a.out core
diff --git a/utils/lsof/patches/002-lsof_noportmap.patch b/utils/lsof/patches/002-lsof_noportmap.patch
deleted file mode 100644 (file)
index 825f255..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/print.c
-+++ b/print.c
-@@ -160,6 +160,7 @@ endnm(sz)
- static void
- fill_portmap()
- {
-+#if !defined __UCLIBC__ || (defined __UCLIBC__ && defined __UCLIBC_HAS_RPC__)
-       char buf[128], *cp, *nm;
-       CLIENT *c;
-       int h, port, pr;
-@@ -278,6 +279,7 @@ fill_portmap()
-           Pth[pr][h] = pt;
-       }
-       clnt_destroy(c);
-+#endif
- }
- #endif        /* !defined(HASNORPC_H) */
diff --git a/utils/lsof/patches/003-lsof_selinux.patch b/utils/lsof/patches/003-lsof_selinux.patch
deleted file mode 100644 (file)
index ee1426d..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Configure
-+++ b/Configure
-@@ -2991,7 +2991,7 @@ return(0); }
-       LSOF_TMP1=1
-       fi      # }
-     fi        # }
--    if test $LSOF_TMP1 -eq 1  # {
-+    if test 0 -eq 1   # {
-     then
-       LSOF_CFGF="$LSOF_CFGF -DHASSELINUX"
-       LSOF_CFGL="$LSOF_CFGL -lselinux"
diff --git a/utils/lsof/patches/004-lsof_ccv.patch b/utils/lsof/patches/004-lsof_ccv.patch
deleted file mode 100644 (file)
index 1f4e57c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/Configure
-+++ b/Configure
-@@ -2850,6 +2850,9 @@ LOCKF_OWNER4
-     if test "X$LSOF_CC" = "X" # {
-     then
-       LSOF_CC=cc
-+    fi        # }
-+    if test "X$LSOF_CCV" = "X"        # {
-+    then
-       LSOF_CCV=`$LSOF_CC -v 2>&1 | sed -n 's/.*version \(.*\)/\1/p'`
-     fi        # }
-     if test "X$LINUX_CONF_CC" = "X"   # {
diff --git a/utils/swanmon/Makefile b/utils/swanmon/Makefile
new file mode 100644 (file)
index 0000000..a0bbb1b
--- /dev/null
@@ -0,0 +1,44 @@
+#
+# Copyright (C) 2023 TDT AG <development@tdt.de>
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See https://www.gnu.org/licenses/gpl-2.0.txt for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=swanmon
+PKG_VERSION:=0.1
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/TDT-AG/swanmon
+PKG_SOURCE_VERSION:=296096e172005cae855c316f859265aba8b2e472
+PKG_MIRROR_HASH:=96b9c988cae8e2c34dc8b483e32b3c619fd3a027be33ece80c93972ab437e10a
+
+PKG_MAINTAINER:=Lukas Voegl <lvoegl@tdt.de>
+PKG_LICENSE:=LGPL-2.1-or-later
+PKG_LICENSE_FILES:=LICENSE
+
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/swanmon
+  SECTION:=utils
+  CATEGORY:=Utilities
+  TITLE:=strongSwan monitoring tool
+  DEPENDS:=+davici +glib2 +libjson-c
+endef
+
+define Package/swanmon/description
+  A command-line utility for serializing the strongSwan VICI output to JSON.
+endef
+
+define Package/swanmon/install
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/swanmon $(1)/usr/sbin/
+endef
+
+$(eval $(call BuildPackage,swanmon))
diff --git a/utils/swanmon/test.sh b/utils/swanmon/test.sh
new file mode 100644 (file)
index 0000000..e2f737f
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+swanmon help
index e8b744a463227240a43e6f601ee1b643c2287186..71d7880c482d77fe4e02f771f14e64746fb03f66 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=syncthing
 PKG_VERSION:=1.24.0
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=syncthing-source-v$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/syncthing/syncthing/releases/download/v$(PKG_VERSION)
index 3ec81e593658600c50e6c35c4cc4734883607af3..7bcb90daea5e69e95525d3e2fd24782e400f6c62 100644 (file)
@@ -14,7 +14,7 @@ config_cb() {
                local option="$1"
                local value="$2"
                case $option in
-               enabled|macprocs|nice|user|logfile)
+               enabled|gui_address|home|logfile|macprocs|nice|user)
                        eval $option=$value
                        ;;
                debug)
index 58254df8fb81bef3f21550340f675dee7ca90ac0..b4283c09baf69c82ee4af9c8aa930795ec0159b2 100644 (file)
@@ -1,12 +1,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=yq
-PKG_VERSION:=4.40.4
+PKG_VERSION:=4.40.5
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/mikefarah/yq/tar.gz/v$(PKG_VERSION)?
-PKG_HASH:=ac89c7e33ad6c62985d9c695251f66143562be10a07a2b70d14334aa3b94f764
+PKG_HASH:=6ab08e0332697cf6a95383a38fd70c5162d00c0e28ea4b2311e9646b664aabe3
 
 PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
 PKG_LICENSE:=MIT