Pārlūkot izejas kodu

Merge branch 'next'

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Peter Korsgaard 3 gadi atpakaļ
vecāks
revīzija
6eff339082
100 mainītis faili ar 446 papildinājumiem un 2074 dzēšanām
  1. 9 0
      Config.in.legacy
  2. 4 0
      DEVELOPERS
  3. 4 3
      board/arm/foundation-v8/readme.txt
  4. 3 3
      configs/aarch64_efi_defconfig
  5. 8 5
      configs/arm_foundationv8_defconfig
  6. 3 3
      configs/bananapi_m2_zero_defconfig
  7. 39 0
      docs/manual/adding-packages-generic.txt
  8. 2 1
      package/Config.in
  9. 1 0
      package/Config.in.host
  10. 8 0
      package/abootimg/Config.in.host
  11. 10 0
      package/abootimg/abootimg.mk
  12. 1 1
      package/axel/axel.hash
  13. 1 1
      package/axel/axel.mk
  14. 0 1
      package/bctoolbox/bctoolbox.mk
  15. 18 7
      package/bind/0001-cross.patch
  16. 4 4
      package/bind/bind.hash
  17. 1 1
      package/bind/bind.mk
  18. 0 31
      package/botan/0001-src-build-data-arch-arm64.txt-add-aarch64_be.patch
  19. 1 1
      package/botan/botan.hash
  20. 1 1
      package/botan/botan.mk
  21. 0 41
      package/cups-filters/0001-configure.ac-fix-cross-compilation-without-dejavu.patch
  22. 2 2
      package/cups-filters/cups-filters.hash
  23. 1 3
      package/cups-filters/cups-filters.mk
  24. 2 2
      package/dnsmasq/dnsmasq.hash
  25. 1 7
      package/dnsmasq/dnsmasq.mk
  26. 6 6
      package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch
  27. 2 2
      package/ejabberd/ejabberd.hash
  28. 2 2
      package/ejabberd/ejabberd.mk
  29. 1 0
      package/environment-setup/environment-setup
  30. 5 0
      package/environment-setup/environment-setup.mk
  31. 2 2
      package/erlang-eimp/erlang-eimp.hash
  32. 1 1
      package/erlang-eimp/erlang-eimp.mk
  33. 2 2
      package/erlang-jiffy/erlang-jiffy.hash
  34. 1 1
      package/erlang-jiffy/erlang-jiffy.mk
  35. 26 0
      package/erlang-p1-acme/0001-rebar.config.script-remove-extra-dependency-to-base6.patch
  36. 2 2
      package/erlang-p1-acme/erlang-p1-acme.hash
  37. 1 1
      package/erlang-p1-acme/erlang-p1-acme.mk
  38. 2 2
      package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash
  39. 1 1
      package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk
  40. 2 2
      package/erlang-p1-mqtree/erlang-p1-mqtree.hash
  41. 1 1
      package/erlang-p1-mqtree/erlang-p1-mqtree.mk
  42. 2 2
      package/erlang-p1-oauth2/erlang-p1-oauth2.hash
  43. 1 1
      package/erlang-p1-oauth2/erlang-p1-oauth2.mk
  44. 2 2
      package/erlang-p1-pkix/erlang-p1-pkix.hash
  45. 1 1
      package/erlang-p1-pkix/erlang-p1-pkix.mk
  46. 31 0
      package/erlang-p1-sip/0001-correct-include.patch
  47. 0 19
      package/erlang-p1-sip/0001-fix-includes.patch
  48. 2 2
      package/erlang-p1-sip/erlang-p1-sip.hash
  49. 1 1
      package/erlang-p1-sip/erlang-p1-sip.mk
  50. 4 4
      package/erlang-p1-stringprep/erlang-p1-stringprep.hash
  51. 1 1
      package/erlang-p1-stringprep/erlang-p1-stringprep.mk
  52. 2 2
      package/erlang-p1-stun/erlang-p1-stun.hash
  53. 1 1
      package/erlang-p1-stun/erlang-p1-stun.mk
  54. 2 2
      package/erlang-p1-tls/erlang-p1-tls.hash
  55. 1 1
      package/erlang-p1-tls/erlang-p1-tls.mk
  56. 2 2
      package/erlang-p1-utils/erlang-p1-utils.hash
  57. 1 1
      package/erlang-p1-utils/erlang-p1-utils.mk
  58. 2 2
      package/erlang-p1-xml/erlang-p1-xml.hash
  59. 1 1
      package/erlang-p1-xml/erlang-p1-xml.mk
  60. 2 2
      package/erlang-p1-xmpp/0001-fix-includes.patch
  61. 2 2
      package/erlang-p1-xmpp/erlang-p1-xmpp.hash
  62. 1 1
      package/erlang-p1-xmpp/erlang-p1-xmpp.mk
  63. 2 2
      package/erlang-p1-yaml/erlang-p1-yaml.hash
  64. 1 1
      package/erlang-p1-yaml/erlang-p1-yaml.mk
  65. 2 2
      package/erlang-p1-yconf/erlang-p1-yconf.hash
  66. 1 1
      package/erlang-p1-yconf/erlang-p1-yconf.mk
  67. 2 2
      package/erlang-p1-zlib/erlang-p1-zlib.hash
  68. 1 1
      package/erlang-p1-zlib/erlang-p1-zlib.mk
  69. 1 1
      package/fbgrab/fbgrab.hash
  70. 1 1
      package/fbgrab/fbgrab.mk
  71. 1 1
      package/fmt/fmt.hash
  72. 1 1
      package/fmt/fmt.mk
  73. 2 2
      package/grep/grep.hash
  74. 1 1
      package/grep/grep.mk
  75. 2 2
      package/haproxy/haproxy.hash
  76. 1 1
      package/haproxy/haproxy.mk
  77. 0 35
      package/ipsec-tools/0001-susv3-legacy.patch
  78. 0 21
      package/ipsec-tools/0002-configure-automake.patch
  79. 0 92
      package/ipsec-tools/0003-Don-t-link-against-libfl.patch
  80. 0 26
      package/ipsec-tools/0004-CVE-2015-4047.patch
  81. 0 208
      package/ipsec-tools/0005-CVE-2016-10396.patch
  82. 0 1104
      package/ipsec-tools/0006-openssl-1.1.patch
  83. 0 75
      package/ipsec-tools/Config.in
  84. 0 6
      package/ipsec-tools/ipsec-tools.hash
  85. 0 85
      package/ipsec-tools/ipsec-tools.mk
  86. 0 35
      package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch
  87. 46 0
      package/kmsxx/0001-meson-add-use-system-fmt-option.patch
  88. 0 27
      package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch
  89. 43 0
      package/kmsxx/0002-meson-add-use-system-pybind11-option.patch
  90. 48 0
      package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch
  91. 4 3
      package/kmsxx/Config.in
  92. 2 2
      package/kmsxx/kmsxx.hash
  93. 29 45
      package/kmsxx/kmsxx.mk
  94. 3 3
      package/libbluray/libbluray.hash
  95. 1 1
      package/libbluray/libbluray.mk
  96. 0 84
      package/libdrm/0003-xf86drm.c-fix-build-failure.patch
  97. 3 3
      package/libdrm/libdrm.hash
  98. 1 1
      package/libdrm/libdrm.mk
  99. 3 5
      package/libinput/libinput.hash
  100. 1 1
      package/libinput/libinput.mk

+ 9 - 0
Config.in.legacy

@@ -144,6 +144,15 @@ endif
 
 ###############################################################################
 
+comment "Legacy options removed in 2021.02"
+
+config BR2_PACKAGE_IPSEC_TOOLS
+	bool "ipsec-tools package was removed"
+	select BR2_LEGACY
+	help
+	  This package has been removed as it has security issues and
+	  has been abandoned since 2014.
+
 comment "Legacy options removed in 2020.11"
 
 config BR2_PACKAGE_OPENCV

+ 4 - 0
DEVELOPERS

@@ -921,6 +921,7 @@ F:	package/netsurf/
 F:	package/perl*
 F:	package/pkg-perl.mk
 F:	package/pkg-luarocks.mk
+F:	package/quickjs/
 F:	package/rings/
 F:	package/tekui/
 F:	package/wpebackend-fdo/
@@ -1863,6 +1864,9 @@ N:	Michel Stempin <michel.stempin@wanadoo.fr>
 F:	board/licheepi/
 F:	configs/licheepi_zero_defconfig
 
+N:	Mike Frampton <mikeframpo@gmail.com>
+F:	package/qcom-db410c-firmware/
+
 N:	Mike Harmony <mike.harmony@snapav.com>
 F:	board/sinovoip/m2-plus/
 F:	configs/bananapi_m2_plus_defconfig

+ 4 - 3
board/arm/foundation-v8/readme.txt

@@ -3,17 +3,18 @@ ARM software simulator of the AArch64 architecture.
 
 First, one has to download the AArch64 software simulator from:
 
-  https://silver.arm.com/download/download.tm?pv=2663527
+  https://silver.arm.com/download/download.tm?pv=4807186
 
 Then, use the arm_foundationv8_defconfig configuration to build your
 Buildroot system.
 
 Finally, boot your system with:
 
- ${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-4.7/Foundation_Platform \
+ ${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-6.4/Foundation_Platform \
     --image output/images/linux-system.axf \
     --block-device output/images/rootfs.ext2 \
-    --network=nat
+    --network=nat \
+    --cores 4
 
 You can get network access from within the simulated environment
 by requesting an IP address using DHCP (run the command 'udhcpc').

+ 3 - 3
configs/aarch64_efi_defconfig

@@ -23,13 +23,13 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="200M"
 BR2_ROOTFS_POST_IMAGE_SCRIPT="board/aarch64-efi/post-image.sh support/scripts/genimage.sh"
 BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/aarch64-efi/genimage-efi.cfg"
 
-# Linux headers same as kernel, a 4.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
+# Linux headers same as kernel, a 5.9 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_9=y
 
 # Kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.10"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.9.11"
 BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
 

+ 8 - 5
configs/arm_foundationv8_defconfig

@@ -1,15 +1,18 @@
 BR2_aarch64=y
-# Linux headers same as kernel, a 4.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=y
+# Linux headers same as kernel, a 5.9 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_9=y
 BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.3"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.9.11"
 BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/foundation-v8"
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/foundation-v8-gicv3-psci"
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
 BR2_TARGET_ROOTFS_EXT2=y
 # BR2_TARGET_ROOTFS_TAR is not set
 BR2_TARGET_BOOT_WRAPPER_AARCH64=y
-BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS="arm/foundation-v8"
+BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS="arm/foundation-v8-gicv3-psci"
 BR2_TARGET_BOOT_WRAPPER_AARCH64_BOOTARGS="root=/dev/vda consolelog=9 console=ttyAMA0 rw"
+BR2_TARGET_BOOT_WRAPPER_AARCH64_PSCI=y
+BR2_TARGET_BOOT_WRAPPER_AARCH64_GICV3=y

+ 3 - 3
configs/bananapi_m2_zero_defconfig

@@ -1,13 +1,13 @@
 BR2_arm=y
 BR2_cortex_a7=y
 BR2_ARM_FPU_NEON_VFPV4=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_6=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_9=y
 BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Bananapi M2 Zero"
 BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
 BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/bananapi/bananapi-m2-zero/genimage.cfg"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.6.7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.9.11"
 BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-bananapi-m2-zero"
@@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
 BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BOARDNAME="bananapi_m2_zero"
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.04"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.10"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
 BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y

+ 39 - 0
docs/manual/adding-packages-generic.txt

@@ -502,6 +502,45 @@ LIBFOO_IGNORE_CVES += CVE-2020-12345
 LIBFOO_IGNORE_CVES += CVE-2020-54321
 ----------------------
 
+* +LIBFOO_CPE_ID_*+ variables is a set of variables that allows the
+  package to define its https://nvd.nist.gov/products/cpe[CPE
+  identifier]. The available variables are:
++
+--
+** +LIBFOO_CPE_ID_PREFIX+, specifies the prefix of the CPE identifier,
+   i.e the first three fields. When not defined, the default value is
+   +cpe:2.3:a+.
+
+** +LIBFOO_CPE_ID_VENDOR+, specifies the vendor part of the CPE
+   identifier. When not defined, the default value is
+   +<pkgname>_project+.
+
+** +LIBFOO_CPE_ID_PRODUCT+, specifies the product part of the CPE
+   identifier. When not defined, the default value is +<pkgname>+.
+
+** +LIBFOO_CPE_ID_VERSION+, specifies the version part of the CPE
+   identifier. When not defined the default value is
+   +$(LIBFOO_VERSION)+.
+
+** +LIBFOO_CPE_ID_VERSION_MINOR+ specifies the _update_ part of the
+   CPE identifier. When not defined the default value is +*+.
+--
++
+If any of those variables is defined, then the generic package
+infrastructure assumes the package provides valid CPE information. In
+this case, +LIBFOO_CPE_ID_VALID = YES+ will be set, and the generic
+package infrastructure will define +LIBFOO_CPE_ID+.
++
+Alternatively, a package can also explicitly set +LIBFOO_CPE_ID_VALID
+= YES+ if the default values for +LIBFOO_CPE_ID_PREFIX+,
++LIBFOO_CPE_ID_VENDOR+, +LIBFOO_CPE_ID_PRODUCT+,
++LIBFOO_CPE_ID_VERSION+, +LIBFOO_CPE_ID_VERSION_MINOR+ are all correct
+for this package and don't need to be explicitly overridden.
++
+For a host package, if its +LIBFOO_CPE_ID_*+ variables are not
+defined, it inherits the value of those variables from the
+corresponding target package.
+
 The recommended way to define these variables is to use the following
 syntax:
 

+ 2 - 1
package/Config.in

@@ -402,6 +402,7 @@ menu "Firmware"
 	source "package/linux-firmware/Config.in"
 	source "package/murata-cyw-fw/Config.in"
 	source "package/odroidc2-firmware/Config.in"
+	source "package/qcom-db410c-firmware/Config.in"
 	source "package/rpi-bt-firmware/Config.in"
 	source "package/rpi-firmware/Config.in"
 	source "package/rpi-wifi-firmware/Config.in"
@@ -1245,6 +1246,7 @@ menu "External python modules"
 	source "package/python-zope-interface/Config.in"
 endmenu
 endif
+	source "package/quickjs/Config.in"
 	source "package/ruby/Config.in"
 	source "package/tcl/Config.in"
 if BR2_PACKAGE_TCL
@@ -2111,7 +2113,6 @@ menu "Networking applications"
 	source "package/iperf/Config.in"
 	source "package/iperf3/Config.in"
 	source "package/iproute2/Config.in"
-	source "package/ipsec-tools/Config.in"
 	source "package/ipset/Config.in"
 	source "package/iptables/Config.in"
 	source "package/iptraf-ng/Config.in"

+ 1 - 0
package/Config.in.host

@@ -1,5 +1,6 @@
 menu "Host utilities"
 
+	source "package/abootimg/Config.in.host"
 	source "package/aespipe/Config.in.host"
 	source "package/android-tools/Config.in.host"
 	source "package/asn1c/Config.in.host"

+ 8 - 0
package/abootimg/Config.in.host

@@ -0,0 +1,8 @@
+config BR2_PACKAGE_HOST_ABOOTIMG
+	bool "host abootimg"
+	select BR2_PACKAGE_HOST_UTIL_LINUX
+	help
+	  Tool to manipulate Android Boot Images, either on files
+	  or directly on /dev block devices.
+
+	  https://github.com/ggrandou/abootimg

+ 10 - 0
package/abootimg/abootimg.mk

@@ -11,6 +11,7 @@ ABOOTIMG_LICENSE_FILES = LICENSE
 
 # depends on libblkid from util-linux
 ABOOTIMG_DEPENDENCIES = util-linux
+HOST_ABOOTIMG_DEPENDENCIES = host-util-linux
 
 define ABOOTIMG_BUILD_CMDS
 	$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)
@@ -20,4 +21,13 @@ define ABOOTIMG_INSTALL_TARGET_CMDS
 	$(INSTALL) -m 0755 $(@D)/abootimg $(TARGET_DIR)/usr/bin/abootimg
 endef
 
+define HOST_ABOOTIMG_BUILD_CMDS
+	$(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D)
+endef
+
+define HOST_ABOOTIMG_INSTALL_CMDS
+	$(INSTALL) -m 0755 $(@D)/abootimg $(HOST_DIR)/usr/bin/abootimg
+endef
+
 $(eval $(generic-package))
+$(eval $(host-generic-package))

+ 1 - 1
package/axel/axel.hash

@@ -1,2 +1,2 @@
-sha256  f1364d9b55d435efc6d32218097a50a63be7b1300138e698133cf19ad3aa3a54  axel-2.17.9.tar.xz
+sha256  46eb4f10a11c4e50320ae6a034ef03ffe59dc11c3c6542a9867a3e4dc0c4b44e  axel-2.17.10.tar.xz
 sha256  ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6  COPYING

+ 1 - 1
package/axel/axel.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-AXEL_VERSION = 2.17.9
+AXEL_VERSION = 2.17.10
 AXEL_SITE = https://github.com/axel-download-accelerator/axel/releases/download/v$(AXEL_VERSION)
 AXEL_SOURCE = axel-$(AXEL_VERSION).tar.xz
 AXEL_LICENSE = GPL-2.0+

+ 0 - 1
package/bctoolbox/bctoolbox.mk

@@ -17,7 +17,6 @@ BCTOOLBOX_CONF_OPTS = \
 	-DENABLE_STRICT=OFF \
 	-DENABLE_TESTS_COMPONENT=OFF \
 	-DENABLE_TESTS=OFF \
-	-DGIT_EXECUTABLE=OFF \
 	-DCMAKE_SKIP_RPATH=ON
 
 ifeq ($(BR2_PACKAGE_LIBICONV),y)

+ 18 - 7
package/bind/0001-cross.patch

@@ -1,15 +1,24 @@
-Use host compiler to build 'gen' since it's run when building.
+From 505cc9fcadda5607dc4c5bacb03928c0b35162a8 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Wed, 4 Nov 2020 17:51:38 +0100
+Subject: [PATCH] Use host compiler to build 'gen' since it's run when
+ building.
 
 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
 [Fabrice: updated for 9.11.10]
 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
+---
+ lib/dns/Makefile.in | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
 
-diff -Nura bind-9.5.1-P1/lib/dns/Makefile.in bind-9.5.1-P1.gencross/lib/dns/Makefile.in
---- bind-9.5.1-P1/lib/dns/Makefile.in	2007-09-11 22:09:08.000000000 -0300
-+++ bind-9.5.1-P1.gencross/lib/dns/Makefile.in	2009-03-04 16:35:23.000000000 -0200
-@@ -160,10 +160,8 @@
+diff --git a/lib/dns/Makefile.in b/lib/dns/Makefile.in
+index 8fc4e94f26..4ac92857e0 100644
+--- a/lib/dns/Makefile.in
++++ b/lib/dns/Makefile.in
+@@ -184,10 +184,8 @@ code.h:	gen
  	./gen -s ${srcdir} > code.h || { rm -f $@ ; exit 1; }
-
+ 
  gen: gen.c
 -	${BUILD_CC} ${BUILD_CFLAGS} -I${top_srcdir}/lib/isc/include \
 -	${LFS_CFLAGS} ${LFS_LDFLAGS} \
@@ -17,7 +26,9 @@ diff -Nura bind-9.5.1-P1/lib/dns/Makefile.in bind-9.5.1-P1.gencross/lib/dns/Make
 -	${BUILD_LIBS} ${LFS_LIBS}
 +	${HOSTCC} ${HOST_CFLAGS} -I${top_srcdir}/lib/isc/include \
 +	${HOST_LDFLAGS} -o $@ ${srcdir}/gen.c
-
+ 
  timestamp: include libdns.@A@
  	touch timestamp
+-- 
+2.29.1
 

+ 4 - 4
package/bind/bind.hash

@@ -1,4 +1,4 @@
-# Verified from https://ftp.isc.org/isc/bind9/9.11.22/bind-9.11.22.tar.gz.asc
-# with key AE3FAC796711EC59FC007AA474BB6B9A4CBB3D38
-sha256  afc6d8015006f1cabf699ff19f517bb8fd9c1811e5231f26baf51c3550262ac9  bind-9.11.22.tar.gz
-sha256  da2aec2b7f6f0feb16bcb080e2c587375fd3195145f047e4d92d112f5b9db501  COPYRIGHT
+# Verified from https://ftp.isc.org/isc/bind9/9.11.24/bind-9.11.24.tar.gz.asc
+# with key 95CEDA256B1CA0A15F302FB59521A7ED5DACE918
+sha256  f261587c5d37c7f14e8393547c4556faefa701a646930f1b6408d71519a30428  bind-9.11.24.tar.gz
+sha256  e316d9d12b3cc3600985d71011d7856f5ff93d28e748155a3a18171b32d98d8b  COPYRIGHT

+ 1 - 1
package/bind/bind.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-BIND_VERSION = 9.11.22
+BIND_VERSION = 9.11.24
 BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION)
 # bind does not support parallel builds.
 BIND_MAKE = $(MAKE1)

+ 0 - 31
package/botan/0001-src-build-data-arch-arm64.txt-add-aarch64_be.patch

@@ -1,31 +0,0 @@
-From a93bc8503649028852402c61bdda531af2872d0e Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Thu, 15 Oct 2020 09:15:06 +0200
-Subject: [PATCH] src/build-data/arch/arm64.txt: add aarch64_be
-
-Allow the user to set cpu value to aarch64_be.
-Endianness will be correctly guessed by choose_endian function because
-this alias ends with "be"
-
-Fixes:
- - http://autobuild.buildroot.org/results/69ebf03c59b2af4140a39bc26f17d0396b6ec15d
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Retrieved from:
-https://github.com/randombit/botan/commit/a93bc8503649028852402c61bdda531af2872d0e]
----
- src/build-data/arch/arm64.txt | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/build-data/arch/arm64.txt b/src/build-data/arch/arm64.txt
-index 056c5318ff..5205295125 100644
---- a/src/build-data/arch/arm64.txt
-+++ b/src/build-data/arch/arm64.txt
-@@ -5,6 +5,7 @@ family arm
- 
- <aliases>
- aarch64
-+aarch64_be
- armv8
- armv8-a
- </aliases>

+ 1 - 1
package/botan/botan.hash

@@ -1,4 +1,4 @@
 # From https://botan.randombit.net/releases/sha256sums.txt
-sha256  92ed6ebc918d86bd1b04221ca518af4cf29cc326c4760740bd2d22e61cea2628  Botan-2.16.0.tar.xz
+sha256  b97044b312aa718349af7851331b064bc7bd5352400d5f80793bace427d01343  Botan-2.17.0.tar.xz
 # Locally computed
 sha256  fb7f0322d36fba55ca17d77bc203a9f09a40daa8a249b75cf8887aba36cec9d0  license.txt

+ 1 - 1
package/botan/botan.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-BOTAN_VERSION = 2.16.0
+BOTAN_VERSION = 2.17.0
 BOTAN_SOURCE = Botan-$(BOTAN_VERSION).tar.xz
 BOTAN_SITE = http://botan.randombit.net/releases
 BOTAN_LICENSE = BSD-2-Clause

+ 0 - 41
package/cups-filters/0001-configure.ac-fix-cross-compilation-without-dejavu.patch

@@ -1,41 +0,0 @@
-From 6ad1ed8b7939bf75079b0a770e234bfee7d33dbb Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Mon, 13 Jul 2020 23:02:50 +0200
-Subject: [PATCH] configure.ac: fix cross-compilation without dejavu
-
-Cross-compilation is broken since commit 1d66106. Indeed, when
-cross-compiling, dejavu font won't be installed in /usr/share/fonts. The
-path (e.g. $(TARGET_DIR)/usr/share/fonts/dejavu/DejaVuSans.ttf) could be
-provided through --with-test-font-path which will fix the build failure
-but will result in broken test programs.
-
-So when cross-compiling don't try to check if the test-font-path is
-valid or not and just use the one provided by the user or the default
-one (e.g. /usr/share/fonts/dejavu/DejaVuSans.ttf)
-
-Fix #262
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Retrieved from:
-https://github.com/OpenPrinting/cups-filters/commit/6ad1ed8b7939bf75079b0a770e234bfee7d33dbb]
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index aa905cf5d..4cc4fd6e5 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -796,10 +796,10 @@ AC_ARG_WITH([test-font-path],
- 	[with_test_font_path=`find /usr/share/fonts -name DejaVuSans.ttf || echo /usr/share/fonts/dejavu/DejaVuSans.ttf`]
- )
- 
--AS_IF([test -f "$with_test_font_path"],
--	[AC_DEFINE_UNQUOTED([TESTFONT], ["$with_test_font_path"], [Path to font used in tests])],
-+AS_IF([test "x$cross_compiling" != "xyes" && ! test -f "$with_test_font_path"],
- 	[AC_MSG_ERROR(DejaVuSans.ttf font file is missing. Please install a package providing it.)]
- )
-+AC_DEFINE_UNQUOTED([TESTFONT], ["$with_test_font_path"], [Path to font used in tests])
- 
- # ================
- # Check for cflags

+ 2 - 2
package/cups-filters/cups-filters.hash

@@ -1,3 +1,3 @@
 # Locally computed:
-sha256 08e4081ce50ce2e620af6e950bdcf64cea2ab4c81ab3c5ea05da25d82ad62db6  cups-filters-1.27.5.tar.gz
-sha256 527463af65312372111804589a9624f4c52813e253062ae351e75af5003f317f  COPYING
+sha256 cf90b96b5c7a906a05070e757ee5566d9680db98a279e60567ea5421c38f11de  cups-filters-1.28.4.tar.gz
+sha256 38192ffdaca98b718f78b2d4abc38bb087f0bbcc9a16d212c98b903b985f900f  COPYING

+ 1 - 3
package/cups-filters/cups-filters.mk

@@ -4,12 +4,10 @@
 #
 ################################################################################
 
-CUPS_FILTERS_VERSION = 1.27.5
+CUPS_FILTERS_VERSION = 1.28.4
 CUPS_FILTERS_SITE = http://openprinting.org/download/cups-filters
 CUPS_FILTERS_LICENSE = GPL-2.0, GPL-2.0+, GPL-3.0, GPL-3.0+, LGPL-2, LGPL-2.1+, MIT, BSD-4-Clause
 CUPS_FILTERS_LICENSE_FILES = COPYING
-# We're patching configure.ac
-CUPS_FILTERS_AUTORECONF = YES
 
 CUPS_FILTERS_DEPENDENCIES = cups libglib2 lcms2 qpdf fontconfig freetype jpeg
 

+ 2 - 2
package/dnsmasq/dnsmasq.hash

@@ -1,6 +1,6 @@
 # Locally calculated after checking pgp signature
-# http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.81.tar.xz.asc
-sha256  749ca903537c5197c26444ac24b0dce242cf42595fdfe6b9a5b9e4c7ad32f8fb  dnsmasq-2.81.tar.xz
+# http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.82.tar.xz.asc
+sha256  84523646f3116bb5e1151efb66e645030f6e6a8256f29aab444777a343ebc132  dnsmasq-2.82.tar.xz
 # Locally calculated
 sha256  dcc100d4161cc0b7177545ab6e47216f84857cda3843847c792a25289852dcaa  COPYING
 sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903  COPYING-v3

+ 1 - 7
package/dnsmasq/dnsmasq.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-DNSMASQ_VERSION = 2.81
+DNSMASQ_VERSION = 2.82
 DNSMASQ_SOURCE = dnsmasq-$(DNSMASQ_VERSION).tar.xz
 DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq
 DNSMASQ_MAKE_ENV = $(TARGET_MAKE_ENV) CC="$(TARGET_CC)"
@@ -77,13 +77,7 @@ DNSMASQ_DEPENDENCIES += ubus
 DNSMASQ_COPTS += -DHAVE_UBUS
 endif
 
-define DNSMASQ_FIX_PKGCONFIG
-	$(SED) 's^PKG_CONFIG = pkg-config^PKG_CONFIG = $(PKG_CONFIG_HOST_BINARY)^' \
-		$(DNSMASQ_DIR)/Makefile
-endef
-
 define DNSMASQ_BUILD_CMDS
-	$(DNSMASQ_FIX_PKGCONFIG)
 	$(DNSMASQ_TWEAK_LIBLUA)
 	$(DNSMASQ_MAKE_ENV) $(MAKE) -C $(@D) $(DNSMASQ_MAKE_OPTS) all$(DNSMASQ_I18N)
 endef

+ 6 - 6
package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch

@@ -1,6 +1,6 @@
-From 277103e886c9b3ddfede8b3f5b92d3e94736f404 Mon Sep 17 00:00:00 2001
+From cb583beba1acba55112fbb4636c1c73d9ae691a0 Mon Sep 17 00:00:00 2001
 From: Johan Oudinet <johan.oudinet@gmail.com>
-Date: Fri, 23 Nov 2018 16:13:21 +0100
+Date: Fri, 20 Nov 2020 00:33:30 +0100
 Subject: [PATCH] Makefile.in: do not download or compile dependencies
 
 Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
@@ -9,10 +9,10 @@ Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/Makefile.in b/Makefile.in
-index 48dca7d8..d2324dae 100644
+index abd64835..06f876bb 100644
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -94,7 +94,7 @@ ifneq ($(INSTALLGROUP),)
+@@ -97,7 +97,7 @@ ifneq ($(INSTALLGROUP),)
    G_USER=-g $(INSTALLGROUP)
  endif
  
@@ -21,7 +21,7 @@ index 48dca7d8..d2324dae 100644
  
  deps: deps/.got
  
-@@ -108,7 +108,7 @@ deps/.built: deps/.got
+@@ -111,7 +111,7 @@ deps/.built: deps/.got
  	$(REBAR) configure-deps
  	$(REBAR) compile && :> deps/.built
  
@@ -31,5 +31,5 @@ index 48dca7d8..d2324dae 100644
  
  update:
 -- 
-2.17.1
+2.29.2
 

+ 2 - 2
package/ejabberd/ejabberd.hash

@@ -1,3 +1,3 @@
 # Locally computed
-sha256 18ddf61af22fc9b59f8afc6835aae2aee9896eb91cc1030056d6bca6a1fa40d2 ejabberd-19.09.1.tgz
-sha256 469bb8cfa3ef22c102875ff31932450c075e6908ff3f7d36893485c0c30898eb COPYING
+sha256  9e922b938458ae9d72d4e5fdd2d08a1fbad651aae47c9a9d15b79d0bbd1e11f8  ejabberd-20.07.tgz
+sha256  469bb8cfa3ef22c102875ff31932450c075e6908ff3f7d36893485c0c30898eb  COPYING

+ 2 - 2
package/ejabberd/ejabberd.mk

@@ -4,9 +4,9 @@
 #
 ################################################################################
 
-EJABBERD_VERSION = 19.09.1
+EJABBERD_VERSION = 20.07
 EJABBERD_SOURCE = ejabberd-$(EJABBERD_VERSION).tgz
-EJABBERD_SITE = https://www.process-one.net/downloads/ejabberd/$(EJABBERD_VERSION)
+EJABBERD_SITE = https://static.process-one.net/ejabberd/downloads/$(EJABBERD_VERSION)
 EJABBERD_LICENSE = GPL-2.0+ with OpenSSL exception
 EJABBERD_LICENSE_FILES = COPYING
 EJABBERD_DEPENDENCIES = getent openssl erlang-eimp host-erlang-lager \

+ 1 - 0
package/environment-setup/environment-setup

@@ -10,6 +10,7 @@ cat <<'EOF'
 Some tips:
 * PATH now contains the SDK utilities
 * Standard autotools variables (CC, LD, CFLAGS) are exported
+* Kernel compilation variables (ARCH, CROSS_COMPILE, KERNELDIR) are exported
 * To configure do "./configure $CONFIGURE_FLAGS" or use
   the "configure" alias
 * To build CMake-based projects, use the "cmake" alias

+ 5 - 0
package/environment-setup/environment-setup.mk

@@ -11,6 +11,7 @@ define HOST_ENVIRONMENT_SETUP_INSTALL_CMDS
 	for var in $(TARGET_CONFIGURE_OPTS); do \
 		printf "export \"$$var\"\n" >> $(ENVIRONMENT_SETUP_FILE); \
 	done
+	printf "export \"ARCH=$(KERNEL_ARCH)\"\n" >> $(ENVIRONMENT_SETUP_FILE)
 	printf "export \"CROSS_COMPILE=$(TARGET_CROSS)\"\n" >> $(ENVIRONMENT_SETUP_FILE)
 	printf "export \"CONFIGURE_FLAGS=--target=$(GNU_TARGET_NAME) \
 		--host=$(GNU_TARGET_NAME) \
@@ -31,6 +32,10 @@ define HOST_ENVIRONMENT_SETUP_INSTALL_CMDS
 		$(ENVIRONMENT_SETUP_FILE)
 	printf "export \"PATH=\$$SDK_PATH/bin:\$$SDK_PATH/sbin:\$$PATH\"\n" \
 		>> $(ENVIRONMENT_SETUP_FILE)
+
+	$(if $(BR2_LINUX_KERNEL),\
+		printf "export \"KERNELDIR=$(LINUX_BUILDDIR)\"\n" \
+			>> $(ENVIRONMENT_SETUP_FILE),)
 endef
 
 $(eval $(host-generic-package))

+ 2 - 2
package/erlang-eimp/erlang-eimp.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 dfcdc211480f974175af615616c7f8c1e8f9dff5d6be5faa3f20c3eb4c60240e erlang-eimp-1.0.12.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  1a529fa6e8264d3cad43861db417a1e841b28c0601aa847857fa0d6a81935922  erlang-eimp-1.0.17.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-eimp/erlang-eimp.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_EIMP_VERSION = 1.0.12
+ERLANG_EIMP_VERSION = 1.0.17
 ERLANG_EIMP_SITE = $(call github,processone,eimp,$(ERLANG_EIMP_VERSION))
 ERLANG_EIMP_LICENSE = Apache-2.0
 ERLANG_EIMP_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-jiffy/erlang-jiffy.hash

@@ -1,3 +1,3 @@
 # Locally computed
-sha256 c555726f592b79894c253ca1dc3c3aec6a5697271d29364d57f8175f387b86f3 erlang-jiffy-0.14.11.tar.gz
-sha256 0fa8afad2f02c08850a16e36fe55376ee19732b3a116a0207f2a73c857777a49 LICENSE
+sha256  7cf67840c58b8732e12c84c8a3b714774da2601ae5e6a57f286273e25b205516  erlang-jiffy-1.0.6.tar.gz
+sha256  0fa8afad2f02c08850a16e36fe55376ee19732b3a116a0207f2a73c857777a49  LICENSE

+ 1 - 1
package/erlang-jiffy/erlang-jiffy.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_JIFFY_VERSION = 0.14.11
+ERLANG_JIFFY_VERSION = 1.0.6
 ERLANG_JIFFY_SITE = $(call github,davisp,jiffy,$(ERLANG_JIFFY_VERSION))
 ERLANG_JIFFY_LICENSE = MIT (core), \
 	BSD-3-Clause (Google double conversion library), \

+ 26 - 0
package/erlang-p1-acme/0001-rebar.config.script-remove-extra-dependency-to-base6.patch

@@ -0,0 +1,26 @@
+From a2422fdf4097d1f5f8c8f88bbe08b9a0f3c35fe6 Mon Sep 17 00:00:00 2001
+From: Johan Oudinet <johan.oudinet@gmail.com>
+Date: Wed, 25 Nov 2020 22:38:22 +0100
+Subject: [PATCH] rebar.config.script: remove extra dependency to base64url
+
+Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
+---
+ rebar.config.script | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rebar.config.script b/rebar.config.script
+index a63895e..41b2970 100644
+--- a/rebar.config.script
++++ b/rebar.config.script
+@@ -62,7 +62,7 @@ Cfg2 = case IsRebar3 of
+                [{plugin_dir, filename:join([filename:dirname(SCRIPT),"plugins"])},
+                 {plugins, [override_deps_versions]}] ++
+                 ModCfg(CONFIG, [deps], fun(V) ->
+-                   V ++ [{base64url, ".*", {git, "git://github.com/dvv/base64url.git", {tag, "v1.0"}}}]
++                   V
+                 end, [])
+        end,
+ 
+-- 
+2.29.2
+

+ 2 - 2
package/erlang-p1-acme/erlang-p1-acme.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 556a9628c323a5a83116ed78599c891f74447b0bac237c095e776c7009089656 erlang-p1-acme-1.0.1.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  e17ba49f45b72200470bc2f176b315bec1028d07a4817859052f98c0a7259632  erlang-p1-acme-1.0.9.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-acme/erlang-p1-acme.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_ACME_VERSION = 1.0.1
+ERLANG_P1_ACME_VERSION = 1.0.9
 ERLANG_P1_ACME_SITE = $(call github,processone,p1_acme,$(ERLANG_P1_ACME_VERSION))
 ERLANG_P1_ACME_LICENSE = Apache-2.0
 ERLANG_P1_ACME_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 572b6532dca59c561d994bf2bf8eed3637118c64cdd3a9e51d81b506f5b09e2c erlang-p1-cache-tab-1.0.20.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  32cb3a3017f53e66bd1c2b75f60a2c4a14f00f375582a3c511ea39266b2385b9  erlang-p1-cache-tab-1.0.25.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-cache-tab/erlang-p1-cache-tab.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_CACHE_TAB_VERSION = 1.0.20
+ERLANG_P1_CACHE_TAB_VERSION = 1.0.25
 ERLANG_P1_CACHE_TAB_SITE = $(call github,processone,cache_tab,$(ERLANG_P1_CACHE_TAB_VERSION))
 ERLANG_P1_CACHE_TAB_LICENSE = Apache-2.0
 ERLANG_P1_CACHE_TAB_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-mqtree/erlang-p1-mqtree.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 034d564e92ca8e9d66668548ea510d2cf9fdbad40609622a87374aa907110884 erlang-p1-mqtree-1.0.5.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
+sha256  4f86e272a97152d3f5166dad583dc1b5bda9582f6777f6294fb8328def8b2189  erlang-p1-mqtree-1.0.10.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE

+ 1 - 1
package/erlang-p1-mqtree/erlang-p1-mqtree.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_MQTREE_VERSION = 1.0.5
+ERLANG_P1_MQTREE_VERSION = 1.0.10
 ERLANG_P1_MQTREE_SITE = $(call github,processone,mqtree,$(ERLANG_P1_MQTREE_VERSION))
 ERLANG_P1_MQTREE_LICENSE = Apache-2.0
 ERLANG_P1_MQTREE_LICENSE_FILES = LICENSE

+ 2 - 2
package/erlang-p1-oauth2/erlang-p1-oauth2.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 55bf54133ce0882fab59f813ddf9ed4dac1e051a53fb4bd1c0565136ebb4d6ac erlang-p1-oauth2-0.6.5.tar.gz
-sha256 0ecddd0a5e35b7fcdab451f54c5bb688fac8365cdf6b0da0ac64b7895a0770f3 LICENSE
+sha256  c5cf0d2a9f5874c289cc6044945f4771a79007bda812e5269dea3a4c92fc8811  erlang-p1-oauth2-0.6.7.tar.gz
+sha256  0ecddd0a5e35b7fcdab451f54c5bb688fac8365cdf6b0da0ac64b7895a0770f3  LICENSE

+ 1 - 1
package/erlang-p1-oauth2/erlang-p1-oauth2.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_OAUTH2_VERSION = 0.6.5
+ERLANG_P1_OAUTH2_VERSION = 0.6.7
 ERLANG_P1_OAUTH2_SITE = $(call github,processone,p1_oauth2,$(ERLANG_P1_OAUTH2_VERSION))
 ERLANG_P1_OAUTH2_LICENSE = MIT
 ERLANG_P1_OAUTH2_LICENSE_FILES = LICENSE

+ 2 - 2
package/erlang-p1-pkix/erlang-p1-pkix.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 184069d9055991cb8b7bd07dde8737a0a793e66e1ec1020deb680f83260a3e82 erlang-p1-pkix-1.0.4.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
+sha256  3a39c4ca74f93efa0e4de4c37f9e4d073b1aeb142ad669f12588ad2b3c39724e  erlang-p1-pkix-1.0.6.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE

+ 1 - 1
package/erlang-p1-pkix/erlang-p1-pkix.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_PKIX_VERSION = 1.0.4
+ERLANG_P1_PKIX_VERSION = 1.0.6
 ERLANG_P1_PKIX_SITE = $(call github,processone,pkix,$(ERLANG_P1_PKIX_VERSION))
 ERLANG_P1_PKIX_LICENSE = Apache-2.0
 ERLANG_P1_PKIX_LICENSE_FILES = LICENSE

+ 31 - 0
package/erlang-p1-sip/0001-correct-include.patch

@@ -0,0 +1,31 @@
+From 5ad4f871df7cbbc973708cb7380c3410b20bde1c Mon Sep 17 00:00:00 2001
+From: Philipp Huebner <debalance@debian.org>
+Date: Tue, 1 Dec 2020 23:07:51 +0100
+Subject: [PATCH] correct include
+
+This part of the code was moved into it's own project and was packaged
+separately by me. To make the build process work, this small fix is
+necessary.
+
+Author: Philipp Huebner <debalance@debian.org>
+Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com>
+---
+ src/esip_socket.erl | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/esip_socket.erl b/src/esip_socket.erl
+index 4154faa..db5fa92 100644
+--- a/src/esip_socket.erl
++++ b/src/esip_socket.erl
+@@ -37,7 +37,7 @@
+ 
+ -include("esip.hrl").
+ -include("esip_lib.hrl").
+--include_lib("stun/include/stun.hrl").
++-include_lib("p1_stun/include/stun.hrl").
+ 
+ -define(TCP_SEND_TIMEOUT, 15000).
+ -define(CONNECT_TIMEOUT, 20000).
+-- 
+2.28.0
+

+ 0 - 19
package/erlang-p1-sip/0001-fix-includes.patch

@@ -1,19 +0,0 @@
-Description: correct include
- This part of the code was moved into it's own project and was packaged
- separately by me. To make the build process work, this small fix is
- necessary.
-Author: Philipp Huebner <debalance@debian.org>
-
-Index: erlang-p1-sip/src/esip_socket.erl
-===================================================================
---- erlang-p1-sip.orig/src/esip_socket.erl
-+++ erlang-p1-sip/src/esip_socket.erl
-@@ -22,7 +22,7 @@
- 
- -include("esip.hrl").
- -include("esip_lib.hrl").
---include("stun.hrl").
-+-include_lib("p1_stun/include/stun.hrl").
- 
- -define(TCP_SEND_TIMEOUT, 15000).
- -define(CONNECT_TIMEOUT, 20000).

+ 2 - 2
package/erlang-p1-sip/erlang-p1-sip.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 4c8dbba1dfcbb16a300fea5fd75f5ab2a145f011fa1ebff37e31e1672a9bc285 erlang-p1-sip-1.0.30.tar.gz
-sha256 6e68ca4488fcdacf80ea0a3f5a6a294d48c2d8dc9de520cc3d6b3f3c1bc12847 LICENSE.txt
+sha256  b46349a7077d8e5f36a216ada4a5c0b51ef3d66005606beb0ea3962069f215a7  erlang-p1-sip-1.0.38.tar.gz
+sha256  6cd4871db940d055cf272c12c10e0c08febdc94362e404390758fde34b4ce01a  LICENSE.txt

+ 1 - 1
package/erlang-p1-sip/erlang-p1-sip.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_SIP_VERSION = 1.0.30
+ERLANG_P1_SIP_VERSION = 1.0.38
 ERLANG_P1_SIP_SITE = $(call github,processone,esip,$(ERLANG_P1_SIP_VERSION))
 ERLANG_P1_SIP_LICENSE = Apache-2.0
 ERLANG_P1_SIP_LICENSE_FILES = LICENSE.txt

+ 4 - 4
package/erlang-p1-stringprep/erlang-p1-stringprep.hash

@@ -1,5 +1,5 @@
 # Locally calculated
-sha256 119b751f569baecc4d911ff3c2a6a33a042f8d0b2e64445072d1af14ed935fc0 erlang-p1-stringprep-1.0.17.tar.gz
-sha256 f44415631770cb818de6d92f3961fdfe6e407a5154f84b87cc06ac27323e919c LICENSE.ALL
-sha256 42aef2a1337ef1f45ae2832aa5aa268c79b2560fb1f3ebab519629372cb24ffe LICENSE.TCL
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  47f9f8ee901f47b7f62c5140ea09f113efe7fedd5e8ffb92d50f51c5e11fb67f  erlang-p1-stringprep-1.0.23.tar.gz
+sha256  f44415631770cb818de6d92f3961fdfe6e407a5154f84b87cc06ac27323e919c  LICENSE.ALL
+sha256  42aef2a1337ef1f45ae2832aa5aa268c79b2560fb1f3ebab519629372cb24ffe  LICENSE.TCL
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-stringprep/erlang-p1-stringprep.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_STRINGPREP_VERSION = 1.0.17
+ERLANG_P1_STRINGPREP_VERSION = 1.0.23
 ERLANG_P1_STRINGPREP_SITE = $(call github,processone,stringprep,$(ERLANG_P1_STRINGPREP_VERSION))
 ERLANG_P1_STRINGPREP_LICENSE = TCL (tools/*.tcl), Apache-2.0 (rest)
 ERLANG_P1_STRINGPREP_LICENSE_FILES = LICENSE.ALL LICENSE.TCL LICENSE.txt

+ 2 - 2
package/erlang-p1-stun/erlang-p1-stun.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 87cfd9d75c7b956b4c26c9e94492737a4528abf4b09f4f7d89a40abaa0dc088a erlang-p1-stun-1.0.29.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  05d2f31f172883d2301a93cd141e6b930dfdd01e10b6aacf806becc3674973d8  erlang-p1-stun-1.0.39.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-stun/erlang-p1-stun.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_STUN_VERSION = 1.0.29
+ERLANG_P1_STUN_VERSION = 1.0.39
 ERLANG_P1_STUN_SITE = $(call github,processone,stun,$(ERLANG_P1_STUN_VERSION))
 ERLANG_P1_STUN_LICENSE = Apache-2.0
 ERLANG_P1_STUN_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-tls/erlang-p1-tls.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 6444e174650054a53624490155a914b8bea31cdefbcd5f87fc1862102dc1db6e erlang-p1-tls-1.1.2.tar.gz
-sha256 6e68ca4488fcdacf80ea0a3f5a6a294d48c2d8dc9de520cc3d6b3f3c1bc12847 LICENSE.txt
+sha256  97fd0a398751fc63b28df016e92a08ea98d083f7d5e3f32380a92de1ee86ca0e  erlang-p1-tls-1.1.9.tar.gz
+sha256  6cd4871db940d055cf272c12c10e0c08febdc94362e404390758fde34b4ce01a  LICENSE.txt

+ 1 - 1
package/erlang-p1-tls/erlang-p1-tls.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_TLS_VERSION = 1.1.2
+ERLANG_P1_TLS_VERSION = 1.1.9
 ERLANG_P1_TLS_SITE = $(call github,processone,fast_tls,$(ERLANG_P1_TLS_VERSION))
 ERLANG_P1_TLS_LICENSE = Apache-2.0
 ERLANG_P1_TLS_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-utils/erlang-p1-utils.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 2559967770558dc003bcc3c7efc216f6c57c4f23830d5de33c6bf61d8a3f880c erlang-p1-utils-1.0.16.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  234b88227f61ef03a6177d97ed062c62a22760b6fd189a5a24d2fd1599d95ac9  erlang-p1-utils-1.0.20.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-utils/erlang-p1-utils.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_UTILS_VERSION = 1.0.16
+ERLANG_P1_UTILS_VERSION = 1.0.20
 ERLANG_P1_UTILS_SITE = $(call github,processone,p1_utils,$(ERLANG_P1_UTILS_VERSION))
 ERLANG_P1_UTILS_LICENSE = Apache-2.0
 ERLANG_P1_UTILS_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-xml/erlang-p1-xml.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 f3226683ec9c8406147a025beebb5b9ed0adcb28099b7c4bb9435a369e9ac3f9 erlang-p1-xml-1.1.37.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  739f37a161a570071469ab1f3d8fc232f004ea616700fe7e46b6d8afa9d03a60  erlang-p1-xml-1.1.44.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-xml/erlang-p1-xml.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_XML_VERSION = 1.1.37
+ERLANG_P1_XML_VERSION = 1.1.44
 ERLANG_P1_XML_SITE = $(call github,processone,fast_xml,$(ERLANG_P1_XML_VERSION))
 ERLANG_P1_XML_LICENSE = Apache-2.0
 ERLANG_P1_XML_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-xmpp/0001-fix-includes.patch

@@ -6,11 +6,11 @@ diff --git a/include/xmpp.hrl b/include/xmpp.hrl
 index afa5f61..678858e 100644
 --- a/include/xmpp.hrl
 +++ b/include/xmpp.hrl
-@@ -26,7 +26,7 @@
+@@ -25,7 +25,7 @@
  -include("ns.hrl").
  -include("jid.hrl").
  -include("xmpp_codec.hrl").
---include("fxml.hrl").
+--include_lib("fast_xml/include/fxml.hrl").
 +-include_lib("p1_xml/include/fxml.hrl").
 
  -type stanza() :: iq() | presence() | message().

+ 2 - 2
package/erlang-p1-xmpp/erlang-p1-xmpp.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 a192349e256c0c0af46e6d7f46c52e6345e61984a266696bb0346934c434f342 erlang-p1-xmpp-1.4.2.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  65c73ffaf8faab5d6fc7d42ada0b5a380f20f3e46056ad98614d81922322d9a2  erlang-p1-xmpp-1.4.10.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-xmpp/erlang-p1-xmpp.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_XMPP_VERSION = 1.4.2
+ERLANG_P1_XMPP_VERSION = 1.4.10
 ERLANG_P1_XMPP_SITE = $(call github,processone,xmpp,$(ERLANG_P1_XMPP_VERSION))
 ERLANG_P1_XMPP_LICENSE = Apache-2.0
 ERLANG_P1_XMPP_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-yaml/erlang-p1-yaml.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 b915612c06ef190bfed6d0370906b071274ed4ce4143b668cdad66588a9484a0 erlang-p1-yaml-1.0.21.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
+sha256  8f53308438e4d1613562acb586b4c4540569d8305097508c40e6f261fe4216cd  erlang-p1-yaml-1.0.28.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE.txt

+ 1 - 1
package/erlang-p1-yaml/erlang-p1-yaml.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_YAML_VERSION = 1.0.21
+ERLANG_P1_YAML_VERSION = 1.0.28
 ERLANG_P1_YAML_SITE = $(call github,processone,fast_yaml,$(ERLANG_P1_YAML_VERSION))
 ERLANG_P1_YAML_LICENSE = Apache-2.0
 ERLANG_P1_YAML_LICENSE_FILES = LICENSE.txt

+ 2 - 2
package/erlang-p1-yconf/erlang-p1-yconf.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 94724bde03c976cdf51d0d43eece73c70381ef60a9dd7e49292d194c0beaeb53 erlang-p1-yconf-1.0.1.tar.gz
-sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE
+sha256  ab0f7462b8d03d18be1587fa9cfb227923055f765fca4459b4bb42ccef971329  erlang-p1-yconf-1.0.8.tar.gz
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE

+ 1 - 1
package/erlang-p1-yconf/erlang-p1-yconf.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_YCONF_VERSION = 1.0.1
+ERLANG_P1_YCONF_VERSION = 1.0.8
 ERLANG_P1_YCONF_SITE = $(call github,processone,yconf,$(ERLANG_P1_YCONF_VERSION))
 ERLANG_P1_YCONF_LICENSE = Apache-2.0
 ERLANG_P1_YCONF_LICENSE_FILES = LICENSE

+ 2 - 2
package/erlang-p1-zlib/erlang-p1-zlib.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256 7d39a3cb92ed7781b6b6ba95704e2591c626d62eddb3c52dcaeac60c339084d7 erlang-p1-zlib-1.0.6.tar.gz
-sha256 6e68ca4488fcdacf80ea0a3f5a6a294d48c2d8dc9de520cc3d6b3f3c1bc12847 LICENSE.txt
+sha256  f0ac60336b2ddf55ac4f58934580cb8f02dba440d68feb607be312dd35d91269  erlang-p1-zlib-1.0.9.tar.gz
+sha256  6cd4871db940d055cf272c12c10e0c08febdc94362e404390758fde34b4ce01a  LICENSE.txt

+ 1 - 1
package/erlang-p1-zlib/erlang-p1-zlib.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ERLANG_P1_ZLIB_VERSION = 1.0.6
+ERLANG_P1_ZLIB_VERSION = 1.0.9
 ERLANG_P1_ZLIB_SITE = $(call github,processone,ezlib,$(ERLANG_P1_ZLIB_VERSION))
 ERLANG_P1_ZLIB_LICENSE = Apache-2.0
 ERLANG_P1_ZLIB_LICENSE_FILES = LICENSE.txt

+ 1 - 1
package/fbgrab/fbgrab.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  2bfdad379579c4ca1a910d0a8ac63183ef2c12a45e6b7d402fd045d83bb3faee  fbgrab-1.3.3.tar.gz
+sha256  62d7aa82138ac36db0921832f3b5267b4cffc0dc22c8701857ebcb997960a32e  fbgrab-1.4.tar.gz
 sha256  fa5fc1d1eec39532ea517518eeefd7b6e3c14341a55e5880a0e2a49eee47a5b7  COPYING

+ 1 - 1
package/fbgrab/fbgrab.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FBGRAB_VERSION = 1.3.3
+FBGRAB_VERSION = 1.4
 FBGRAB_SITE = $(call github,GunnarMonell,fbgrab,$(FBGRAB_VERSION))
 FBGRAB_DEPENDENCIES = libpng
 FBGRAB_LICENSE = GPL-2.0

+ 1 - 1
package/fmt/fmt.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  decfdf9ad274070fa85f26407b816f5a4d82205ae86bac1990be658d0795ea4d  fmt-7.0.3.zip
+sha256  5d98c504d0205f912e22449ecdea776b78ce0bb096927334f80781e720084c9f  fmt-7.1.3.zip
 sha256  825c9324e70f8c839c8ba910543dd4a7daee243b86ef960594c11381a19980b8  LICENSE.rst

+ 1 - 1
package/fmt/fmt.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FMT_VERSION = 7.0.3
+FMT_VERSION = 7.1.3
 FMT_SITE = https://github.com/fmtlib/fmt/releases/download/$(FMT_VERSION)
 FMT_SOURCE = fmt-$(FMT_VERSION).zip
 FMT_LICENSE = MIT with exception

+ 2 - 2
package/grep/grep.hash

@@ -1,5 +1,5 @@
 # Locally calculated after checking signature
-# http://ftp.gnu.org/gnu/grep/grep-3.5.tar.xz.sig
+# http://ftp.gnu.org/gnu/grep/grep-3.6.tar.xz.sig
 # using key 155D3FC500C834486D1EEA677FD9FCCB000BEEEE
-sha256  b82ac77707c2ab945520c8404c9fa9f890f7791a62cf2103cf6238acad87a44a  grep-3.5.tar.xz
+sha256  667e15e8afe189e93f9f21a7cd3a7b3f776202f417330b248c2ad4f997d9373e  grep-3.6.tar.xz
 sha256  3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986  COPYING

+ 1 - 1
package/grep/grep.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GREP_VERSION = 3.5
+GREP_VERSION = 3.6
 GREP_SITE = $(BR2_GNU_MIRROR)/grep
 GREP_SOURCE = grep-$(GREP_VERSION).tar.xz
 GREP_LICENSE = GPL-3.0+

+ 2 - 2
package/haproxy/haproxy.hash

@@ -1,5 +1,5 @@
-# From: http://www.haproxy.org/download/2.2/src/haproxy-2.2.4.tar.gz.sha256
-sha256  87a4d9d4ff8dc3094cb61bbed4a8eed2c40b5ac47b9604daebaf036d7b541be2  haproxy-2.2.4.tar.gz
+# From: http://www.haproxy.org/download/2.2/src/haproxy-2.2.5.tar.gz.sha256
+sha256  63ad1813e01992d0fbe5ac7ca3e516a53fc62cdb17845d5ac90260031b6dd747  haproxy-2.2.5.tar.gz
 # Locally computed:
 sha256  0717ca51fceaa25ac9e5ccc62e0c727dcf27796057201fb5fded56a25ff6ca28  LICENSE
 sha256  5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a  doc/lgpl.txt

+ 1 - 1
package/haproxy/haproxy.mk

@@ -5,7 +5,7 @@
 ################################################################################
 
 HAPROXY_VERSION_MAJOR = 2.2
-HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).4
+HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).5
 HAPROXY_SITE = http://www.haproxy.org/download/$(HAPROXY_VERSION_MAJOR)/src
 HAPROXY_LICENSE = GPL-2.0+ and LGPL-2.1+ with exceptions
 HAPROXY_LICENSE_FILES = LICENSE doc/lgpl.txt doc/gpl.txt

+ 0 - 35
package/ipsec-tools/0001-susv3-legacy.patch

@@ -1,35 +0,0 @@
-Replaces sysv3 legacy functions with modern equivalents.
-
-Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
-Index: ipsec-tools-0.7.3/src/racoon/pfkey.c
-===================================================================
---- ipsec-tools-0.7.3.orig/src/racoon/pfkey.c	2010-07-12 14:46:52.000000000 +0200
-+++ ipsec-tools-0.7.3/src/racoon/pfkey.c	2010-07-12 15:01:39.000000000 +0200
-@@ -3008,12 +3008,12 @@
- 				struct sockaddr *paddr;
- 
- 				paddr = (struct sockaddr *)(xisr + 1);
--				bcopy(paddr, &(*p_isr)->saidx.src,
-+				memmove(&(*p_isr)->saidx.src, paddr,
- 					sysdep_sa_len(paddr));
- 
- 				paddr = (struct sockaddr *)((caddr_t)paddr
- 							+ sysdep_sa_len(paddr));
--				bcopy(paddr, &(*p_isr)->saidx.dst,
-+				memmove(&(*p_isr)->saidx.dst, paddr,
- 					sysdep_sa_len(paddr));
- 			}
- 
-Index: ipsec-tools-0.7.3/src/racoon/racoonctl.c
-===================================================================
---- ipsec-tools-0.7.3.orig/src/racoon/racoonctl.c	2010-07-12 14:49:51.000000000 +0200
-+++ ipsec-tools-0.7.3/src/racoon/racoonctl.c	2010-07-12 15:00:52.000000000 +0200
-@@ -785,7 +785,7 @@
- 		errx(1, "cannot read source address");
- 
- 	/* We get "ip[port]" strip the port */
--	if ((idx = index(srcaddr, '[')) == NULL) 
-+	if ((idx = strchr(srcaddr, '[')) == NULL)
- 		errx(1, "unexpected source address format");
- 	*idx = '\0';
- 

+ 0 - 21
package/ipsec-tools/0002-configure-automake.patch

@@ -1,21 +0,0 @@
-Needed to fix broken autoreconf
-
-Downloaded from
-https://sources.debian.net/src/ipsec-tools/1:0.8.2%2B20140711-8/debian/patches/automake-options/
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-Index: pkg-ipsec-tools/configure.ac
-===================================================================
---- pkg-ipsec-tools.orig/configure.ac	2014-06-28 17:25:22.000000000 +0200
-+++ pkg-ipsec-tools/configure.ac	2014-06-28 17:28:13.818373322 +0200
-@@ -6,7 +6,8 @@ AC_INIT(ipsec-tools, 0.8.2)
- AC_CONFIG_SRCDIR([configure.ac])
- AC_CONFIG_HEADERS(config.h)
- 
--AM_INIT_AUTOMAKE(dist-bzip2)
-+AC_CONFIG_MACRO_DIR([.])
-+AM_INIT_AUTOMAKE([dist-bzip2 foreign serial-tests])
- 
- AC_ENABLE_SHARED(no)
- 

+ 0 - 92
package/ipsec-tools/0003-Don-t-link-against-libfl.patch

@@ -1,92 +0,0 @@
-From e48b9097dce7bc2bfbb9e9c542124d3b5cebab39 Mon Sep 17 00:00:00 2001
-From: Paul Barker <paul@paulbarker.me.uk>
-Date: Wed, 5 Mar 2014 13:39:14 +0000
-Subject: [PATCH] Don't link against libfl
-
-We can remove all references to yywrap by adding "%option noyywrap" statements
-to each flex source file that doesn't override yywrap. After this, we no longer
-need to link against libfl and so no longer get errors about undefined
-references to yylex.
-
-Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
-Upstream-status: Submitted 2014-03-11
-    see http://sourceforge.net/p/ipsec-tools/mailman/ipsec-tools-devel/thread/CANyK_8ewmxGA3vBVJW6s1APXPmxPR%2BDFWZ61EL8pCt288aKQ6w%40mail.gmail.com/#msg32088797
-
-Downloaded from
-http://cgit.openembedded.org/meta-openembedded/tree/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- src/libipsec/Makefile.am | 1 -
- src/racoon/Makefile.am   | 2 +-
- src/racoon/cftoken.l     | 2 ++
- src/setkey/Makefile.am   | 1 -
- src/setkey/token.l       | 2 ++
- 5 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/src/libipsec/Makefile.am b/src/libipsec/Makefile.am
-index 6a4e3b3..df1e106 100644
---- a/src/libipsec/Makefile.am
-+++ b/src/libipsec/Makefile.am
-@@ -26,7 +26,6 @@ libipsec_la_SOURCES = \
- # version is current:revision:age.
- # See: http://www.gnu.org/manual/libtool-1.4.2/html_chapter/libtool_6.html#SEC32
- libipsec_la_LDFLAGS = -version-info 0:1:0
--libipsec_la_LIBADD = $(LEXLIB)
- 
- noinst_HEADERS = ipsec_strerror.h
- 
-diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am
-index dbaded9..0662957 100644
---- a/src/racoon/Makefile.am
-+++ b/src/racoon/Makefile.am
-@@ -38,7 +38,7 @@ racoon_SOURCES = \
- 	cftoken.l cfparse.y prsa_tok.l prsa_par.y 
- EXTRA_racoon_SOURCES = isakmp_xauth.c isakmp_cfg.c isakmp_unity.c throttle.c \
- 	isakmp_frag.c nattraversal.c security.c $(MISSING_ALGOS)
--racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(LEXLIB) \
-+racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) \
- 	 $(SECCTX_OBJS) vmbuf.o sockmisc.o misc.o ../libipsec/libipsec.la
- racoon_DEPENDENCIES = \
- 	$(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(SECCTX_OBJS) \
-diff --git a/src/racoon/cftoken.l b/src/racoon/cftoken.l
-index 490242c..1701922 100644
---- a/src/racoon/cftoken.l
-+++ b/src/racoon/cftoken.l
-@@ -106,6 +106,8 @@ static int incstackp = 0;
- static int yy_first_time = 1;
- %}
- 
-+%option noyywrap
-+
- /* common seciton */
- nl		\n
- ws		[ \t]+
-diff --git a/src/setkey/Makefile.am b/src/setkey/Makefile.am
-index 746c1f1..389e6cf 100644
---- a/src/setkey/Makefile.am
-+++ b/src/setkey/Makefile.am
-@@ -13,7 +13,6 @@ setkey_SOURCES = \
- 
- setkey_LDFLAGS = ../libipsec/libipsec.la
- setkey_DEPENDENCIES = ../libipsec/libipsec.la
--setkey_LDADD = $(LEXLIB)
- 
- noinst_HEADERS = vchar.h extern.h
- man8_MANS = setkey.8
-diff --git a/src/setkey/token.l b/src/setkey/token.l
-index ad3d843..eb23b76 100644
---- a/src/setkey/token.l
-+++ b/src/setkey/token.l
-@@ -88,6 +88,8 @@
- #endif
- %}
- 
-+%option noyywrap
-+
- /* common section */
- nl		\n
- ws		[ \t]+
--- 
-1.9.0
-

+ 0 - 26
package/ipsec-tools/0004-CVE-2015-4047.patch

@@ -1,26 +0,0 @@
-ipsec-tools: CVE-2015-4047: null pointer dereference crash in racoon
-
-See: https://bugs.gentoo.org/show_bug.cgi?id=550118
-
-Downloaded from
-https://gitweb.gentoo.org/repo/gentoo.git/tree/net-vpn/ipsec-tools/files/ipsec-tools-CVE-2015-4047.patch
-
-See also
-https://sources.debian.net/src/ipsec-tools/1:0.8.2%2B20140711-8/debian/patches/bug785778-null-pointer-deref.patch/
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- ./src/racoon/gssapi.c    9 Sep 2006 16:22:09 -0000       1.4
-+++ ./src/racoon/gssapi.c    19 May 2015 15:16:00 -0000      1.6
-@@ -192,6 +192,11 @@
-	gss_name_t princ, canon_princ;
-	OM_uint32 maj_stat, min_stat;
- 
-+	if (iph1->rmconf == NULL) {
-+		plog(LLV_ERROR, LOCATION, NULL, "no remote config\n");
-+		return -1;
-+	}
-+
-	gps = racoon_calloc(1, sizeof (struct gssapi_ph1_state));
-	if (gps == NULL) {
-		plog(LLV_ERROR, LOCATION, NULL, "racoon_calloc failed\n");

+ 0 - 208
package/ipsec-tools/0005-CVE-2016-10396.patch

@@ -1,208 +0,0 @@
-Fix CVE-2016-10396
-
-Description: Fix remotely exploitable DoS. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10396
-Source: vendor; https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51682
-Bug-debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867986
-
-Downloaded from
-https://github.com/openwrt/packages/blob/master/net/ipsec-tools/patches/010-CVE-2016-10396.patch
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-Index: ipsec-tools-0.8.2/src/racoon/isakmp_frag.c
-===================================================================
---- ipsec-tools-0.8.2.orig/src/racoon/isakmp_frag.c
-+++ ipsec-tools-0.8.2/src/racoon/isakmp_frag.c
-@@ -1,4 +1,4 @@
--/*	$NetBSD: isakmp_frag.c,v 1.5 2009/04/22 11:24:20 tteras Exp $	*/
-+/*	$NetBSD: isakmp_frag.c,v 1.5.36.1 2017/04/21 16:50:42 bouyer Exp $	*/
- 
- /* Id: isakmp_frag.c,v 1.4 2004/11/13 17:31:36 manubsd Exp */
- 
-@@ -173,6 +173,43 @@ vendorid_frag_cap(gen)
- 	return ntohl(hp[MD5_DIGEST_LENGTH / sizeof(*hp)]);
- }
- 
-+static int 
-+isakmp_frag_insert(struct ph1handle *iph1, struct isakmp_frag_item *item)
-+{
-+	struct isakmp_frag_item *pitem = NULL;
-+	struct isakmp_frag_item *citem = iph1->frag_chain;
-+
-+	/* no frag yet, just insert at beginning of list */
-+	if (iph1->frag_chain == NULL) {
-+		iph1->frag_chain = item;
-+		return 0;
-+	}
-+
-+	do {
-+		/* duplicate fragment number, abort (CVE-2016-10396) */
-+		if (citem->frag_num == item->frag_num)
-+			return -1;
-+
-+		/* need to insert before current item */
-+		if (citem->frag_num > item->frag_num) {
-+			if (pitem != NULL)
-+				pitem->frag_next = item;
-+			else
-+				/* insert at the beginning of the list  */
-+				iph1->frag_chain = item;
-+			item->frag_next = citem;
-+			return 0;
-+		}
-+
-+		pitem = citem;
-+		citem = citem->frag_next;
-+	} while (citem != NULL);
-+
-+	/* we reached the end of the list, insert */
-+	pitem->frag_next = item;
-+	return 0;
-+}
-+
- int 
- isakmp_frag_extract(iph1, msg)
- 	struct ph1handle *iph1;
-@@ -224,39 +261,43 @@ isakmp_frag_extract(iph1, msg)
- 	item->frag_next = NULL;
- 	item->frag_packet = buf;
- 
--	/* Look for the last frag while inserting the new item in the chain */
--	if (item->frag_last)
--		last_frag = item->frag_num;
-+	/* Check for the last frag before inserting the new item in the chain */
-+	if (item->frag_last) {
-+		/* if we have the last fragment, indices must match */
-+		if (iph1->frag_last_index != 0 &&
-+		    item->frag_last != iph1->frag_last_index) {
-+			plog(LLV_ERROR, LOCATION, NULL,
-+			     "Repeated last fragment index mismatch\n");
-+			racoon_free(item);
-+			vfree(buf);
-+			return -1;
-+		}
- 
--	if (iph1->frag_chain == NULL) {
--		iph1->frag_chain = item;
--	} else {
--		struct isakmp_frag_item *current;
-+		last_frag = iph1->frag_last_index = item->frag_num;
-+	}
- 
--		current = iph1->frag_chain;
--		while (current->frag_next) {
--			if (current->frag_last)
--				last_frag = item->frag_num;
--			current = current->frag_next;
--		}
--		current->frag_next = item;
-+	/* insert fragment into chain */
-+	if (isakmp_frag_insert(iph1, item) == -1) {
-+		plog(LLV_ERROR, LOCATION, NULL,
-+		    "Repeated fragment index mismatch\n");
-+		racoon_free(item);
-+		vfree(buf);
-+		return -1;
- 	}
- 
--	/* If we saw the last frag, check if the chain is complete */
-+	/* If we saw the last frag, check if the chain is complete
-+	 * we have a sorted list now, so just walk through */
- 	if (last_frag != 0) {
-+		item = iph1->frag_chain;
- 		for (i = 1; i <= last_frag; i++) {
--			item = iph1->frag_chain;
--			do {
--				if (item->frag_num == i)
--					break;
--				item = item->frag_next;
--			} while (item != NULL);
--
-+			if (item->frag_num != i)
-+				break;
-+			item = item->frag_next;
- 			if (item == NULL) /* Not found */
- 				break;
- 		}
- 
--		if (item != NULL) /* It is complete */
-+		if (i > last_frag) /* It is complete */
- 			return 1;
- 	}
- 		
-@@ -291,15 +332,9 @@ isakmp_frag_reassembly(iph1)
- 	}
- 	data = buf->v;
- 
-+	item = iph1->frag_chain;
- 	for (i = 1; i <= frag_count; i++) {
--		item = iph1->frag_chain;
--		do {
--			if (item->frag_num == i)
--				break;
--			item = item->frag_next;
--		} while (item != NULL);
--
--		if (item == NULL) {
-+		if (item->frag_num != i) {
- 			plog(LLV_ERROR, LOCATION, NULL, 
- 			    "Missing fragment #%d\n", i);
- 			vfree(buf);
-@@ -308,6 +343,7 @@ isakmp_frag_reassembly(iph1)
- 		}
- 		memcpy(data, item->frag_packet->v, item->frag_packet->l);
- 		data += item->frag_packet->l;
-+		item = item->frag_next;
- 	}
- 
- out:
-Index: ipsec-tools-0.8.2/src/racoon/isakmp_inf.c
-===================================================================
---- ipsec-tools-0.8.2.orig/src/racoon/isakmp_inf.c
-+++ ipsec-tools-0.8.2/src/racoon/isakmp_inf.c
-@@ -720,6 +720,7 @@ isakmp_info_send_nx(isakmp, remote, loca
- #endif
- #ifdef ENABLE_FRAG
- 	iph1->frag = 0;
-+	iph1->frag_last_index = 0;
- 	iph1->frag_chain = NULL;
- #endif
- 
-Index: ipsec-tools-0.8.2/src/racoon/isakmp.c
-===================================================================
---- ipsec-tools-0.8.2.orig/src/racoon/isakmp.c
-+++ ipsec-tools-0.8.2/src/racoon/isakmp.c
-@@ -1071,6 +1071,7 @@ isakmp_ph1begin_i(rmconf, remote, local)
- 		iph1->frag = 1;
- 	else
- 		iph1->frag = 0;
-+	iph1->frag_last_index = 0;
- 	iph1->frag_chain = NULL;
- #endif
- 	iph1->approval = NULL;
-@@ -1175,6 +1176,7 @@ isakmp_ph1begin_r(msg, remote, local, et
- #endif
- #ifdef ENABLE_FRAG
- 	iph1->frag = 0;
-+	iph1->frag_last_index = 0;
- 	iph1->frag_chain = NULL;
- #endif
- 	iph1->approval = NULL;
-Index: ipsec-tools-0.8.2/src/racoon/handler.h
-===================================================================
---- ipsec-tools-0.8.2.orig/src/racoon/handler.h
-+++ ipsec-tools-0.8.2/src/racoon/handler.h
-@@ -1,4 +1,4 @@
--/*	$NetBSD: handler.h,v 1.25 2010/11/17 10:40:41 tteras Exp $	*/
-+/*	$NetBSD: handler.h,v 1.26 2017/01/24 19:23:56 christos Exp $	*/
- 
- /* Id: handler.h,v 1.19 2006/02/25 08:25:12 manubsd Exp */
- 
-@@ -141,6 +141,7 @@ struct ph1handle {
- #endif
- #ifdef ENABLE_FRAG
- 	int frag;			/* IKE phase 1 fragmentation */
-+	int frag_last_index;
- 	struct isakmp_frag_item *frag_chain;	/* Received fragments */
- #endif
- 

+ 0 - 1104
package/ipsec-tools/0006-openssl-1.1.patch

@@ -1,1104 +0,0 @@
-From 071fec7181255b9234add44865a435dfdefee520 Mon Sep 17 00:00:00 2001
-In-Reply-To: <20180528120513.560-1-cote2004-github@yahoo.com>
-References: <20180528120513.560-1-cote2004-github@yahoo.com>
-From: Eneas U de Queiroz <cote2004-github@yahoo.com>
-Date: Wed, 30 May 2018 15:42:20 -0300
-Subject: [PATCH] ipsec-tools: add openssl 1.1 support
-To: equeiroz@troianet.com.br
-
-This patch updates the calls to openssl 1.1 API, and adds a
-compatibility layer so it compiles with (at least) openssl 1.0.2, I
-haven't tested it with lower versions, but all that's needed is to edit
-the openssl_compat.* files and add the missing functions there--they're
-usually trivial.
-
-Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
-
-Downloaded from
-https://github.com/openwrt/packages/blob/master/net/ipsec-tools/patches/015-openssl-1.1.patch
-
-Patch was sent upstream:
-https://sourceforge.net/p/ipsec-tools/mailman/ipsec-tools-devel/thread/20180528120513.560-1-cote2004-github%40yahoo.com/#msg36327963
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- src/racoon/Makefile.am      |  10 +--
- src/racoon/algorithm.c      |   6 +-
- src/racoon/cfparse.y        |   2 +-
- src/racoon/crypto_openssl.c | 197 +++++++++++++++++++++-------------------
- src/racoon/crypto_openssl.h |   2 +-
- src/racoon/eaytest.c        |   7 +-
- src/racoon/ipsec_doi.c      |   2 +-
- src/racoon/openssl_compat.c | 213 ++++++++++++++++++++++++++++++++++++++++++++
- src/racoon/openssl_compat.h |  45 ++++++++++
- src/racoon/plainrsa-gen.c   |  41 +++++----
- src/racoon/prsa_par.y       |  28 ++++--
- src/racoon/rsalist.c        |   5 +-
- 12 files changed, 431 insertions(+), 127 deletions(-)
- create mode 100644 src/racoon/openssl_compat.c
- create mode 100644 src/racoon/openssl_compat.h
-
-diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am
-index dbaded9..4c585f3 100644
---- a/src/racoon/Makefile.am
-+++ b/src/racoon/Makefile.am
-@@ -4,7 +4,7 @@ sbin_PROGRAMS = racoon racoonctl plainrsa-gen
- noinst_PROGRAMS = eaytest
- include_racoon_HEADERS = racoonctl.h var.h vmbuf.h misc.h gcmalloc.h admin.h \
- 	schedule.h sockmisc.h isakmp_var.h isakmp.h isakmp_xauth.h \
--	isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h
-+	isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h openssl_compat.h
- lib_LTLIBRARIES = libracoon.la
- 
- adminsockdir=${localstatedir}/racoon
-@@ -32,7 +32,7 @@ racoon_SOURCES = \
- 	gssapi.c dnssec.c getcertsbyname.c privsep.c \
- 	pfkey.c admin.c evt.c ipsec_doi.c oakley.c grabmyaddr.c vendorid.c \
- 	policy.c localconf.c remoteconf.c crypto_openssl.c algorithm.c \
--	proposal.c sainfo.c strnames.c \
-+	openssl_compat.c proposal.c sainfo.c strnames.c \
- 	plog.c logger.c schedule.c str2val.c \
- 	safefile.c backupsa.c genlist.c rsalist.c \
- 	cftoken.l cfparse.y prsa_tok.l prsa_par.y 
-@@ -51,12 +51,12 @@ libracoon_la_SOURCES = kmpstat.c vmbuf.c sockmisc.c misc.c
- libracoon_la_CFLAGS = -DNOUSE_PRIVSEP $(AM_CFLAGS)
- 
- plainrsa_gen_SOURCES = plainrsa-gen.c plog.c \
--	crypto_openssl.c logger.c 
-+	crypto_openssl.c logger.c openssl_compat.c
- EXTRA_plainrsa_gen_SOURCES = $(MISSING_ALGOS)
- plainrsa_gen_LDADD = $(CRYPTOBJS) vmbuf.o misc.o
- plainrsa_gen_DEPENDENCIES = $(CRYPTOBJS) vmbuf.o misc.o
- 
--eaytest_SOURCES = eaytest.c plog.c logger.c
-+eaytest_SOURCES = eaytest.c plog.c logger.c openssl_compat.c
- EXTRA_eaytest_SOURCES = missing/crypto/sha2/sha2.c
- eaytest_LDADD =	crypto_openssl_test.o vmbuf.o str2val.o misc_noplog.o \
- 	$(CRYPTOBJS)
-@@ -75,7 +75,7 @@ noinst_HEADERS = \
- 	debugrm.h         isakmp.h      misc.h          sainfo.h \
- 	dhgroup.h         isakmp_agg.h  netdb_dnssec.h  schedule.h \
- 	isakmp_cfg.h      isakmp_xauth.h isakmp_unity.h isakmp_frag.h \
--	throttle.h	  privsep.h \
-+	throttle.h	  privsep.h     openssl_compat.h \
- 	cfparse_proto.h	  cftoken_proto.h genlist.h     rsalist.h \
- 	missing/crypto/sha2/sha2.h missing/crypto/rijndael/rijndael_local.h \
- 	missing/crypto/rijndael/rijndael-api-fst.h \
-diff --git a/src/racoon/algorithm.c b/src/racoon/algorithm.c
-index 3fd50f6..66c874b 100644
---- a/src/racoon/algorithm.c
-+++ b/src/racoon/algorithm.c
-@@ -128,7 +128,7 @@ static struct enc_algorithm oakley_encdef[] = {
- { "aes",	algtype_aes,	OAKLEY_ATTR_ENC_ALG_AES,	16,
- 		eay_aes_encrypt,	eay_aes_decrypt,
- 		eay_aes_weakkey,	eay_aes_keylen, },
--#ifdef HAVE_OPENSSL_CAMELLIA_H
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- { "camellia",	algtype_camellia,	OAKLEY_ATTR_ENC_ALG_CAMELLIA,	16,
- 		eay_camellia_encrypt,	eay_camellia_decrypt,
- 		eay_camellia_weakkey,	eay_camellia_keylen, },
-@@ -168,7 +168,7 @@ static struct enc_algorithm ipsec_encdef[] = {
- { "twofish",	algtype_twofish,	IPSECDOI_ESP_TWOFISH,		16,
- 		NULL,			NULL,
- 		NULL,			eay_twofish_keylen, },
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- { "3idea",	algtype_3idea,		IPSECDOI_ESP_3IDEA,		8,
- 		NULL,			NULL,
- 		NULL,			NULL, },
-@@ -179,7 +179,7 @@ static struct enc_algorithm ipsec_encdef[] = {
- { "rc4",	algtype_rc4,		IPSECDOI_ESP_RC4,		8,
- 		NULL,			NULL,
- 		NULL,			NULL, },
--#ifdef HAVE_OPENSSL_CAMELLIA_H
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- { "camellia",	algtype_camellia,	IPSECDOI_ESP_CAMELLIA,		16,
- 		NULL,			NULL,
- 		NULL,			eay_camellia_keylen, },
-diff --git a/src/racoon/cfparse.y b/src/racoon/cfparse.y
-index 0d9bd67..8415752 100644
---- a/src/racoon/cfparse.y
-+++ b/src/racoon/cfparse.y
-@@ -2564,7 +2564,7 @@ set_isakmp_proposal(rmconf)
- 		plog(LLV_DEBUG2, LOCATION, NULL,
- 			"encklen=%d\n", s->encklen);
- 
--		memset(types, 0, ARRAYLEN(types));
-+		memset(types, 0, sizeof types);
- 		types[algclass_isakmp_enc] = s->algclass[algclass_isakmp_enc];
- 		types[algclass_isakmp_hash] = s->algclass[algclass_isakmp_hash];
- 		types[algclass_isakmp_dh] = s->algclass[algclass_isakmp_dh];
-diff --git a/src/racoon/crypto_openssl.c b/src/racoon/crypto_openssl.c
-index 55b076a..8fb358f 100644
---- a/src/racoon/crypto_openssl.c
-+++ b/src/racoon/crypto_openssl.c
-@@ -90,6 +90,7 @@
- #endif
- #endif
- #include "plog.h"
-+#include "openssl_compat.h"
- 
- #define USE_NEW_DES_API
- 
-@@ -316,9 +317,12 @@ eay_cmp_asn1dn(n1, n2)
- 			i = idx+1;
- 			goto end;
- 		}
--		if ((ea->value->length == 1 && ea->value->data[0] == '*') ||
--		    (eb->value->length == 1 && eb->value->data[0] == '*')) {
--	    		if (OBJ_cmp(ea->object,eb->object)) {
-+		ASN1_STRING *sa = X509_NAME_ENTRY_get_data(ea);
-+		ASN1_STRING *sb = X509_NAME_ENTRY_get_data(eb);
-+		if ((ASN1_STRING_length(sa) == 1 && ASN1_STRING_get0_data(sa)[0] == '*') ||
-+		    (ASN1_STRING_length(sb) == 1 && ASN1_STRING_get0_data(sb)[0] == '*')) {
-+	    		if (OBJ_cmp(X509_NAME_ENTRY_get_object(ea),
-+				    X509_NAME_ENTRY_get_object(eb))) {
- 				i = idx+1;
- 				goto end;
- 	    		}
-@@ -430,7 +434,7 @@ cb_check_cert_local(ok, ctx)
- 
- 	if (!ok) {
- 		X509_NAME_oneline(
--				X509_get_subject_name(ctx->current_cert),
-+				X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)),
- 				buf,
- 				256);
- 		/*
-@@ -438,7 +442,8 @@ cb_check_cert_local(ok, ctx)
- 		 * ok if they are self signed. But we should still warn
- 		 * the user.
-  		 */
--		switch (ctx->error) {
-+		int ctx_error = X509_STORE_CTX_get_error(ctx);
-+		switch (ctx_error) {
- 		case X509_V_ERR_CERT_HAS_EXPIRED:
- 		case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT:
- 		case X509_V_ERR_INVALID_CA:
-@@ -453,9 +458,9 @@ cb_check_cert_local(ok, ctx)
- 		}
- 		plog(log_tag, LOCATION, NULL,
- 			"%s(%d) at depth:%d SubjectName:%s\n",
--			X509_verify_cert_error_string(ctx->error),
--			ctx->error,
--			ctx->error_depth,
-+			X509_verify_cert_error_string(ctx_error),
-+			ctx_error,
-+			X509_STORE_CTX_get_error_depth(ctx),
- 			buf);
- 	}
- 	ERR_clear_error();
-@@ -477,10 +482,11 @@ cb_check_cert_remote(ok, ctx)
- 
- 	if (!ok) {
- 		X509_NAME_oneline(
--				X509_get_subject_name(ctx->current_cert),
-+				X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)),
- 				buf,
- 				256);
--		switch (ctx->error) {
-+		int ctx_error=X509_STORE_CTX_get_error(ctx);
-+		switch (ctx_error) {
- 		case X509_V_ERR_UNABLE_TO_GET_CRL:
- 			ok = 1;
- 			log_tag = LLV_WARNING;
-@@ -490,9 +496,9 @@ cb_check_cert_remote(ok, ctx)
- 		}
- 		plog(log_tag, LOCATION, NULL,
- 			"%s(%d) at depth:%d SubjectName:%s\n",
--			X509_verify_cert_error_string(ctx->error),
--			ctx->error,
--			ctx->error_depth,
-+			X509_verify_cert_error_string(ctx_error),
-+			ctx_error,
-+			X509_STORE_CTX_get_error_depth(ctx),
- 			buf);
- 	}
- 	ERR_clear_error();
-@@ -516,14 +522,15 @@ eay_get_x509asn1subjectname(cert)
- 	if (x509 == NULL)
- 		goto error;
- 
-+	X509_NAME *subject_name = X509_get_subject_name(x509);
- 	/* get the length of the name */
--	len = i2d_X509_NAME(x509->cert_info->subject, NULL);
-+	len = i2d_X509_NAME(subject_name, NULL);
- 	name = vmalloc(len);
- 	if (!name)
- 		goto error;
- 	/* get the name */
- 	bp = (unsigned char *) name->v;
--	len = i2d_X509_NAME(x509->cert_info->subject, &bp);
-+	len = i2d_X509_NAME(subject_name, &bp);
- 
- 	X509_free(x509);
- 
-@@ -661,15 +668,16 @@ eay_get_x509asn1issuername(cert)
- 	if (x509 == NULL)
- 		goto error;
- 
-+	X509_NAME *issuer_name = X509_get_issuer_name(x509);
- 	/* get the length of the name */
--	len = i2d_X509_NAME(x509->cert_info->issuer, NULL);
-+	len = i2d_X509_NAME(issuer_name, NULL);
- 	name = vmalloc(len);
- 	if (name == NULL)
- 		goto error;
- 
- 	/* get the name */
- 	bp = (unsigned char *) name->v;
--	len = i2d_X509_NAME(x509->cert_info->issuer, &bp);
-+	len = i2d_X509_NAME(issuer_name, &bp);
- 
- 	X509_free(x509);
- 
-@@ -850,7 +858,7 @@ eay_check_x509sign(source, sig, cert)
- 		return -1;
- 	}
- 
--	res = eay_rsa_verify(source, sig, evp->pkey.rsa);
-+	res = eay_rsa_verify(source, sig, EVP_PKEY_get0_RSA(evp));
- 
- 	EVP_PKEY_free(evp);
- 	X509_free(x509);
-@@ -992,7 +1000,7 @@ eay_get_x509sign(src, privkey)
- 	if (evp == NULL)
- 		return NULL;
- 
--	sig = eay_rsa_sign(src, evp->pkey.rsa);
-+	sig = eay_rsa_sign(src, EVP_PKEY_get0_RSA(evp));
- 
- 	EVP_PKEY_free(evp);
- 
-@@ -1079,7 +1087,11 @@ eay_strerror()
- 	int line, flags;
- 	unsigned long es;
- 
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+	es = 0; /* even when allowed by OPENSSL_API_COMPAT, it is defined as 0 */
-+#else
- 	es = CRYPTO_thread_id();
-+#endif
- 
- 	while ((l = ERR_get_error_line_data(&file, &line, &data, &flags)) != 0){
- 		n = snprintf(ebuf + len, sizeof(ebuf) - len,
-@@ -1100,7 +1112,7 @@ vchar_t *
- evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc)
- {
- 	vchar_t *res;
--	EVP_CIPHER_CTX ctx;
-+	EVP_CIPHER_CTX *ctx;
- 
- 	if (!e)
- 		return NULL;
-@@ -1111,7 +1123,7 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc
- 	if ((res = vmalloc(data->l)) == NULL)
- 		return NULL;
- 
--	EVP_CIPHER_CTX_init(&ctx);
-+	ctx = EVP_CIPHER_CTX_new();
- 
- 	switch(EVP_CIPHER_nid(e)){
- 	case NID_bf_cbc:
-@@ -1125,54 +1137,41 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc
- 		/* XXX: can we do that also for algos with a fixed key size ?
- 		 */
- 		/* init context without key/iv
--         */
--        if (!EVP_CipherInit(&ctx, e, NULL, NULL, enc))
--        {
--            OpenSSL_BUG();
--            vfree(res);
--            return NULL;
--        }
-+                 */
-+		if (!EVP_CipherInit(ctx, e, NULL, NULL, enc))
-+			goto out;
- 		
--        /* update key size
--         */
--        if (!EVP_CIPHER_CTX_set_key_length(&ctx, key->l))
--        {
--            OpenSSL_BUG();
--            vfree(res);
--            return NULL;
--        }
--
--        /* finalize context init with desired key size
--         */
--        if (!EVP_CipherInit(&ctx, NULL, (u_char *) key->v,
-+		/* update key size
-+		 */
-+		if (!EVP_CIPHER_CTX_set_key_length(ctx, key->l))
-+			goto out;
-+
-+		/* finalize context init with desired key size
-+		 */
-+		if (!EVP_CipherInit(ctx, NULL, (u_char *) key->v,
- 							(u_char *) iv->v, enc))
--        {
--            OpenSSL_BUG();
--            vfree(res);
--            return NULL;
--		}
-+			goto out;
- 		break;
- 	default:
--		if (!EVP_CipherInit(&ctx, e, (u_char *) key->v, 
--							(u_char *) iv->v, enc)) {
--			OpenSSL_BUG();
--			vfree(res);
--			return NULL;
--		}
-+		if (!EVP_CipherInit(ctx, e, (u_char *) key->v,
-+							(u_char *) iv->v, enc))
-+            		goto out;
- 	}
- 
- 	/* disable openssl padding */
--	EVP_CIPHER_CTX_set_padding(&ctx, 0); 
-+	EVP_CIPHER_CTX_set_padding(ctx, 0);
- 	
--	if (!EVP_Cipher(&ctx, (u_char *) res->v, (u_char *) data->v, data->l)) {
--		OpenSSL_BUG();
--		vfree(res);
--		return NULL;
--	}
-+	if (!EVP_Cipher(ctx, (u_char *) res->v, (u_char *) data->v, data->l))
-+		goto out;
- 
--	EVP_CIPHER_CTX_cleanup(&ctx);
-+	EVP_CIPHER_CTX_free(ctx);
- 
- 	return res;
-+out:
-+	EVP_CIPHER_CTX_free(ctx);
-+	OpenSSL_BUG();
-+	vfree(res);
-+	return NULL;
- }
- 
- int
-@@ -1230,7 +1229,7 @@ eay_des_keylen(len)
- 	return evp_keylen(len, EVP_des_cbc());
- }
- 
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- /*
-  * IDEA-CBC
-  */
-@@ -1587,7 +1586,7 @@ eay_aes_keylen(len)
- 	return len;
- }
- 
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- /*
-  * CAMELLIA-CBC
-  */
-@@ -1680,9 +1679,9 @@ eay_hmac_init(key, md)
- 	vchar_t *key;
- 	const EVP_MD *md;
- {
--	HMAC_CTX *c = racoon_malloc(sizeof(*c));
-+	HMAC_CTX *c = HMAC_CTX_new();
- 
--	HMAC_Init(c, key->v, key->l, md);
-+	HMAC_Init_ex(c, key->v, key->l, md, NULL);
- 
- 	return (caddr_t)c;
- }
-@@ -1761,8 +1760,7 @@ eay_hmacsha2_512_final(c)
- 
- 	HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- 	res->l = l;
--	HMAC_cleanup((HMAC_CTX *)c);
--	(void)racoon_free(c);
-+	HMAC_CTX_free((HMAC_CTX *)c);
- 
- 	if (SHA512_DIGEST_LENGTH != res->l) {
- 		plog(LLV_ERROR, LOCATION, NULL,
-@@ -1811,8 +1809,7 @@ eay_hmacsha2_384_final(c)
- 
- 	HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- 	res->l = l;
--	HMAC_cleanup((HMAC_CTX *)c);
--	(void)racoon_free(c);
-+	HMAC_CTX_free((HMAC_CTX *)c);
- 
- 	if (SHA384_DIGEST_LENGTH != res->l) {
- 		plog(LLV_ERROR, LOCATION, NULL,
-@@ -1861,8 +1858,7 @@ eay_hmacsha2_256_final(c)
- 
- 	HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- 	res->l = l;
--	HMAC_cleanup((HMAC_CTX *)c);
--	(void)racoon_free(c);
-+	HMAC_CTX_free((HMAC_CTX *)c);
- 
- 	if (SHA256_DIGEST_LENGTH != res->l) {
- 		plog(LLV_ERROR, LOCATION, NULL,
-@@ -1912,8 +1908,7 @@ eay_hmacsha1_final(c)
- 
- 	HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- 	res->l = l;
--	HMAC_cleanup((HMAC_CTX *)c);
--	(void)racoon_free(c);
-+	HMAC_CTX_free((HMAC_CTX *)c);
- 
- 	if (SHA_DIGEST_LENGTH != res->l) {
- 		plog(LLV_ERROR, LOCATION, NULL,
-@@ -1962,8 +1957,7 @@ eay_hmacmd5_final(c)
- 
- 	HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- 	res->l = l;
--	HMAC_cleanup((HMAC_CTX *)c);
--	(void)racoon_free(c);
-+	HMAC_CTX_free((HMAC_CTX *)c);
- 
- 	if (MD5_DIGEST_LENGTH != res->l) {
- 		plog(LLV_ERROR, LOCATION, NULL,
-@@ -2266,6 +2260,7 @@ eay_dh_generate(prime, g, publen, pub, priv)
- 	u_int32_t g;
- {
- 	BIGNUM *p = NULL;
-+	BIGNUM *BNg = NULL;
- 	DH *dh = NULL;
- 	int error = -1;
- 
-@@ -2276,25 +2271,28 @@ eay_dh_generate(prime, g, publen, pub, priv)
- 
- 	if ((dh = DH_new()) == NULL)
- 		goto end;
--	dh->p = p;
--	p = NULL;	/* p is now part of dh structure */
--	dh->g = NULL;
--	if ((dh->g = BN_new()) == NULL)
-+	if ((BNg = BN_new()) == NULL)
- 		goto end;
--	if (!BN_set_word(dh->g, g))
-+	if (!BN_set_word(BNg, g))
- 		goto end;
-+	if (! DH_set0_pqg(dh, p, NULL, BNg))
-+		goto end;
-+	BNg = NULL;
-+	p = NULL;	/* p is now part of dh structure */
- 
- 	if (publen != 0)
--		dh->length = publen;
-+		DH_set_length(dh, publen);
- 
- 	/* generate public and private number */
- 	if (!DH_generate_key(dh))
- 		goto end;
- 
- 	/* copy results to buffers */
--	if (eay_bn2v(pub, dh->pub_key) < 0)
-+	BIGNUM *pub_key, *priv_key;
-+	DH_get0_key(dh, (const BIGNUM**) &pub_key, (const BIGNUM**) &priv_key);
-+	if (eay_bn2v(pub, pub_key) < 0)
- 		goto end;
--	if (eay_bn2v(priv, dh->priv_key) < 0) {
-+	if (eay_bn2v(priv, priv_key) < 0) {
- 		vfree(*pub);
- 		goto end;
- 	}
-@@ -2306,6 +2304,8 @@ end:
- 		DH_free(dh);
- 	if (p != 0)
- 		BN_free(p);
-+	if (BNg != 0)
-+		BN_free(BNg);
- 	return(error);
- }
- 
-@@ -2319,6 +2319,10 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- 	int l;
- 	unsigned char *v = NULL;
- 	int error = -1;
-+	BIGNUM *p = BN_new();
-+	BIGNUM *BNg = BN_new();
-+	BIGNUM *pub_key = BN_new();
-+	BIGNUM *priv_key = BN_new();
- 
- 	/* make public number to compute */
- 	if (eay_v2bn(&dh_pub, pub2) < 0)
-@@ -2327,19 +2331,21 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- 	/* make DH structure */
- 	if ((dh = DH_new()) == NULL)
- 		goto end;
--	if (eay_v2bn(&dh->p, prime) < 0)
-+	if (p == NULL || BNg == NULL || pub_key == NULL || priv_key == NULL)
- 		goto end;
--	if (eay_v2bn(&dh->pub_key, pub) < 0)
-+
-+	if (eay_v2bn(&p, prime) < 0)
- 		goto end;
--	if (eay_v2bn(&dh->priv_key, priv) < 0)
-+	if (eay_v2bn(&pub_key, pub) < 0)
- 		goto end;
--	dh->length = pub2->l * 8;
--
--	dh->g = NULL;
--	if ((dh->g = BN_new()) == NULL)
-+	if (eay_v2bn(&priv_key, priv) < 0)
- 		goto end;
--	if (!BN_set_word(dh->g, g))
-+	if (!BN_set_word(BNg, g))
- 		goto end;
-+	DH_set0_key(dh, pub_key, priv_key);
-+	DH_set_length(dh, pub2->l * 8);
-+	DH_set0_pqg(dh, p, NULL, BNg);
-+	pub_key = priv_key = p = BNg = NULL;
- 
- 	if ((v = racoon_calloc(prime->l, sizeof(u_char))) == NULL)
- 		goto end;
-@@ -2350,6 +2356,14 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- 	error = 0;
- 
- end:
-+	if (p != NULL)
-+		BN_free(p);
-+	if (BNg != NULL)
-+		BN_free(BNg);
-+	if (pub_key != NULL)
-+		BN_free(pub_key);
-+	if (priv_key != NULL)
-+		BN_free(priv_key);
- 	if (dh_pub != NULL)
- 		BN_free(dh_pub);
- 	if (dh != NULL)
-@@ -2400,12 +2414,14 @@ eay_bn2v(var, bn)
- void
- eay_init()
- {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- 	OpenSSL_add_all_algorithms();
- 	ERR_load_crypto_strings();
- #ifdef HAVE_OPENSSL_ENGINE_H
- 	ENGINE_load_builtin_engines();
- 	ENGINE_register_all_complete();
- #endif
-+#endif
- }
- 
- vchar_t *
-@@ -2504,8 +2520,7 @@ binbuf_pubkey2rsa(vchar_t *binbuf)
- 		goto out;
- 	}
- 	
--	rsa_pub->n = mod;
--	rsa_pub->e = exp;
-+	RSA_set0_key(rsa_pub, mod, exp, NULL);
- 
- out:
- 	return rsa_pub;
-@@ -2582,5 +2597,5 @@ eay_random()
- const char *
- eay_version()
- {
--	return SSLeay_version(SSLEAY_VERSION);
-+	return OpenSSL_version(OPENSSL_VERSION);
- }
-diff --git a/src/racoon/crypto_openssl.h b/src/racoon/crypto_openssl.h
-index 66fac73..ee5b765 100644
---- a/src/racoon/crypto_openssl.h
-+++ b/src/racoon/crypto_openssl.h
-@@ -124,7 +124,7 @@ extern vchar_t *eay_aes_decrypt __P((vchar_t *, vchar_t *, vchar_t *));
- extern int eay_aes_weakkey __P((vchar_t *));
- extern int eay_aes_keylen __P((int));
- 
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- /* Camellia */
- extern vchar_t *eay_camellia_encrypt __P((vchar_t *, vchar_t *, vchar_t *));
- extern vchar_t *eay_camellia_decrypt __P((vchar_t *, vchar_t *, vchar_t *));
-diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c
-index 1474bdc..ae09db3 100644
---- a/src/racoon/eaytest.c
-+++ b/src/racoon/eaytest.c
-@@ -62,6 +62,7 @@
- #include "dhgroup.h"
- #include "crypto_openssl.h"
- #include "gnuc.h"
-+#include "openssl_compat.h"
- 
- #include "package_version.h"
- 
-@@ -103,7 +104,7 @@ rsa_verify_with_pubkey(src, sig, pubkey_txt)
- 		printf ("PEM_read_PUBKEY(): %s\n", eay_strerror());
- 		return -1;
- 	}
--	error = eay_check_rsasign(src, sig, evp->pkey.rsa);
-+	error = eay_check_rsasign(src, sig, EVP_PKEY_get0_RSA(evp));
- 
- 	return error;
- }
-@@ -698,7 +699,7 @@ ciphertest(ac, av)
- 			  eay_cast_encrypt, eay_cast_decrypt) < 0)
- 	  return -1;
- 	
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- 	if (ciphertest_1 ("IDEA",
- 			  &data, 8,
- 			  &key, key.l,
-@@ -715,7 +716,7 @@ ciphertest(ac, av)
- 			  eay_rc5_encrypt, eay_rc5_decrypt) < 0)
- 	  return -1;
- #endif
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- 	if (ciphertest_1 ("CAMELLIA",
- 			  &data, 16,
- 			  &key, key.l,
-diff --git a/src/racoon/ipsec_doi.c b/src/racoon/ipsec_doi.c
-index 84a4c71..b52469f 100644
---- a/src/racoon/ipsec_doi.c
-+++ b/src/racoon/ipsec_doi.c
-@@ -715,7 +715,7 @@ out:
- 	/* key length must not be specified on some algorithms */
- 	if (keylen) {
- 		if (sa->enctype == OAKLEY_ATTR_ENC_ALG_DES
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- 		 || sa->enctype == OAKLEY_ATTR_ENC_ALG_IDEA
- #endif
- 		 || sa->enctype == OAKLEY_ATTR_ENC_ALG_3DES) {
-diff --git a/src/racoon/openssl_compat.c b/src/racoon/openssl_compat.c
-new file mode 100644
-index 0000000..864b5fb
---- /dev/null
-+++ b/src/racoon/openssl_compat.c
-@@ -0,0 +1,213 @@
-+/*
-+ * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
-+ *
-+ * Licensed under the OpenSSL license (the "License").  You may not use
-+ * this file except in compliance with the License.  You can obtain a copy
-+ * in the file LICENSE in the source distribution or at
-+ * https://www.openssl.org/source/license.html
-+ */
-+
-+#include "openssl_compat.h"
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+
-+#include <string.h>
-+
-+static void *OPENSSL_zalloc(size_t num)
-+{
-+    void *ret = OPENSSL_malloc(num);
-+
-+    if (ret != NULL)
-+        memset(ret, 0, num);
-+    return ret;
-+}
-+
-+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d)
-+{
-+    /* If the fields n and e in r are NULL, the corresponding input
-+     * parameters MUST be non-NULL for n and e.  d may be
-+     * left NULL (in case only the public key is used).
-+     */
-+    if ((r->n == NULL && n == NULL)
-+        || (r->e == NULL && e == NULL))
-+        return 0;
-+
-+    if (n != NULL) {
-+        BN_free(r->n);
-+        r->n = n;
-+    }
-+    if (e != NULL) {
-+        BN_free(r->e);
-+        r->e = e;
-+    }
-+    if (d != NULL) {
-+        BN_free(r->d);
-+        r->d = d;
-+    }
-+
-+    return 1;
-+}
-+
-+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q)
-+{
-+    /* If the fields p and q in r are NULL, the corresponding input
-+     * parameters MUST be non-NULL.
-+     */
-+    if ((r->p == NULL && p == NULL)
-+        || (r->q == NULL && q == NULL))
-+        return 0;
-+
-+    if (p != NULL) {
-+        BN_free(r->p);
-+        r->p = p;
-+    }
-+    if (q != NULL) {
-+        BN_free(r->q);
-+        r->q = q;
-+    }
-+
-+    return 1;
-+}
-+
-+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp)
-+{
-+    /* If the fields dmp1, dmq1 and iqmp in r are NULL, the corresponding input
-+     * parameters MUST be non-NULL.
-+     */
-+    if ((r->dmp1 == NULL && dmp1 == NULL)
-+        || (r->dmq1 == NULL && dmq1 == NULL)
-+        || (r->iqmp == NULL && iqmp == NULL))
-+        return 0;
-+
-+    if (dmp1 != NULL) {
-+        BN_free(r->dmp1);
-+        r->dmp1 = dmp1;
-+    }
-+    if (dmq1 != NULL) {
-+        BN_free(r->dmq1);
-+        r->dmq1 = dmq1;
-+    }
-+    if (iqmp != NULL) {
-+        BN_free(r->iqmp);
-+        r->iqmp = iqmp;
-+    }
-+
-+    return 1;
-+}
-+
-+void RSA_get0_key(const RSA *r,
-+                  const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
-+{
-+    if (n != NULL)
-+        *n = r->n;
-+    if (e != NULL)
-+        *e = r->e;
-+    if (d != NULL)
-+        *d = r->d;
-+}
-+
-+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q)
-+{
-+    if (p != NULL)
-+        *p = r->p;
-+    if (q != NULL)
-+        *q = r->q;
-+}
-+
-+void RSA_get0_crt_params(const RSA *r,
-+                         const BIGNUM **dmp1, const BIGNUM **dmq1,
-+                         const BIGNUM **iqmp)
-+{
-+    if (dmp1 != NULL)
-+        *dmp1 = r->dmp1;
-+    if (dmq1 != NULL)
-+        *dmq1 = r->dmq1;
-+    if (iqmp != NULL)
-+        *iqmp = r->iqmp;
-+}
-+
-+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
-+{
-+    /* If the fields p and g in d are NULL, the corresponding input
-+     * parameters MUST be non-NULL.  q may remain NULL.
-+     */
-+    if ((dh->p == NULL && p == NULL)
-+        || (dh->g == NULL && g == NULL))
-+        return 0;
-+
-+    if (p != NULL) {
-+        BN_free(dh->p);
-+        dh->p = p;
-+    }
-+    if (q != NULL) {
-+        BN_free(dh->q);
-+        dh->q = q;
-+    }
-+    if (g != NULL) {
-+        BN_free(dh->g);
-+        dh->g = g;
-+    }
-+
-+    if (q != NULL) {
-+        dh->length = BN_num_bits(q);
-+    }
-+
-+    return 1;
-+}
-+
-+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
-+{
-+    if (pub_key != NULL)
-+        *pub_key = dh->pub_key;
-+    if (priv_key != NULL)
-+        *priv_key = dh->priv_key;
-+}
-+
-+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)
-+{
-+    /* If the field pub_key in dh is NULL, the corresponding input
-+     * parameters MUST be non-NULL.  The priv_key field may
-+     * be left NULL.
-+     */
-+    if (dh->pub_key == NULL && pub_key == NULL)
-+        return 0;
-+
-+    if (pub_key != NULL) {
-+        BN_free(dh->pub_key);
-+        dh->pub_key = pub_key;
-+    }
-+    if (priv_key != NULL) {
-+        BN_free(dh->priv_key);
-+        dh->priv_key = priv_key;
-+    }
-+
-+    return 1;
-+}
-+
-+int DH_set_length(DH *dh, long length)
-+{
-+    dh->length = length;
-+    return 1;
-+}
-+
-+HMAC_CTX *HMAC_CTX_new(void)
-+{
-+    return OPENSSL_zalloc(sizeof(HMAC_CTX));
-+}
-+
-+void HMAC_CTX_free(HMAC_CTX *ctx)
-+{
-+    HMAC_CTX_cleanup(ctx);
-+    OPENSSL_free(ctx);
-+}
-+
-+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey)
-+{
-+    if (pkey->type != EVP_PKEY_RSA) {
-+        return NULL;
-+    }
-+    return pkey->pkey.rsa;
-+}
-+
-+
-+#endif /* OPENSSL_VERSION_NUMBER */
-diff --git a/src/racoon/openssl_compat.h b/src/racoon/openssl_compat.h
-new file mode 100644
-index 0000000..9e152c2
---- /dev/null
-+++ b/src/racoon/openssl_compat.h
-@@ -0,0 +1,45 @@
-+#ifndef OPENSSL_COMPAT_H
-+#define OPENSSL_COMPAT_H
-+
-+#include <openssl/opensslv.h>
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+
-+#include <openssl/rsa.h>
-+#include <openssl/dh.h>
-+#include <openssl/evp.h>
-+#include <openssl/hmac.h>
-+
-+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d);
-+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q);
-+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp);
-+void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d);
-+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q);
-+void RSA_get0_crt_params(const RSA *r, const BIGNUM **dmp1, const BIGNUM **dmq1, const BIGNUM **iqmp);
-+
-+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g);
-+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key);
-+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key);
-+int DH_set_length(DH *dh, long length);
-+
-+HMAC_CTX *HMAC_CTX_new(void);
-+void HMAC_CTX_free(HMAC_CTX* ctx);
-+
-+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey);
-+
-+#define ASN1_STRING_length(s) s->length
-+#define ASN1_STRING_get0_data(s) s->data
-+
-+#define X509_get_subject_name(x) x->cert_info->subject
-+#define X509_get_issuer_name(x) x->cert_info->issuer
-+#define X509_NAME_ENTRY_get_data(n) n->value
-+#define X509_NAME_ENTRY_get_object(n) n->object
-+#define X509_STORE_CTX_get_current_cert(ctx) ctx->current_cert
-+#define X509_STORE_CTX_get_error(ctx) ctx->error
-+#define X509_STORE_CTX_get_error_depth(ctx) ctx->error_depth
-+
-+#define OPENSSL_VERSION SSLEAY_VERSION
-+#define OpenSSL_version SSLeay_version
-+
-+#endif /* OPENSSL_VERSION_NUMBER */
-+
-+#endif /* OPENSSL_COMPAT_H */
-diff --git a/src/racoon/plainrsa-gen.c b/src/racoon/plainrsa-gen.c
-index cad1861..b949b08 100644
---- a/src/racoon/plainrsa-gen.c
-+++ b/src/racoon/plainrsa-gen.c
-@@ -60,6 +60,7 @@
- #include "vmbuf.h"
- #include "plog.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
- 
- #include "package_version.h"
- 
-@@ -90,12 +91,14 @@ mix_b64_pubkey(const RSA *key)
- 	char *binbuf;
- 	long binlen, ret;
- 	vchar_t *res;
--	
--	binlen = 1 + BN_num_bytes(key->e) + BN_num_bytes(key->n);
-+	const BIGNUM *e, *n;
-+
-+	RSA_get0_key(key, &n, &e, NULL);
-+	binlen = 1 + BN_num_bytes(e) + BN_num_bytes(n);
- 	binbuf = malloc(binlen);
- 	memset(binbuf, 0, binlen);
--	binbuf[0] = BN_bn2bin(key->e, (unsigned char *) &binbuf[1]);
--	ret = BN_bn2bin(key->n, (unsigned char *) (&binbuf[binbuf[0] + 1]));
-+	binbuf[0] = BN_bn2bin(e, (unsigned char *) &binbuf[1]);
-+	ret = BN_bn2bin(n, (unsigned char *) (&binbuf[binbuf[0] + 1]));
- 	if (1 + binbuf[0] + ret != binlen) {
- 		plog(LLV_ERROR, LOCATION, NULL,
- 		     "Pubkey generation failed. This is really strange...\n");
-@@ -131,16 +134,20 @@ print_rsa_key(FILE *fp, const RSA *key)
- 	
- 	fprintf(fp, "# : PUB 0s%s\n", pubkey64->v);
- 	fprintf(fp, ": RSA\t{\n");
--	fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(key->n));
-+	const BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp;
-+	RSA_get0_key(key, &n, &e, &d);
-+	RSA_get0_factors(key, &p, &q);
-+	RSA_get0_crt_params(key, &dmp1, &dmq1, &iqmp);
-+	fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(n));
- 	fprintf(fp, "\t# pubkey=0s%s\n", pubkey64->v);
--	fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(key->n)));
--	fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(key->e)));
--	fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(key->d)));
--	fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(key->p)));
--	fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(key->q)));
--	fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(key->dmp1)));
--	fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(key->dmq1)));
--	fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(key->iqmp)));
-+	fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(n)));
-+	fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(e)));
-+	fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(d)));
-+	fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(p)));
-+	fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(q)));
-+	fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(dmp1)));
-+	fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(dmq1)));
-+	fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(iqmp)));
- 	fprintf(fp, "  }\n");
- 
- 	vfree(pubkey64);
-@@ -203,11 +210,13 @@ int
- gen_rsa_key(FILE *fp, size_t bits, unsigned long exp)
- {
- 	int ret;
--	RSA *key;
-+	RSA *key = RSA_new();
-+	BIGNUM *e = BN_new();
- 
--	key = RSA_generate_key(bits, exp, NULL, NULL);
--	if (!key) {
-+	BN_set_word(e, exp);
-+	if (! RSA_generate_key_ex(key, bits, e, NULL)) {
- 		fprintf(stderr, "RSA_generate_key(): %s\n", eay_strerror());
-+		RSA_free(key);
- 		return -1;
- 	}
- 	
-diff --git a/src/racoon/prsa_par.y b/src/racoon/prsa_par.y
-index 1987e4d..27ce4c6 100644
---- a/src/racoon/prsa_par.y
-+++ b/src/racoon/prsa_par.y
-@@ -68,6 +68,7 @@
- #include "isakmp_var.h"
- #include "handler.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
- #include "sockmisc.h"
- #include "rsalist.h"
- 
-@@ -85,7 +86,18 @@ char *prsa_cur_fname = NULL;
- struct genlist *prsa_cur_list = NULL;
- enum rsa_key_type prsa_cur_type = RSA_TYPE_ANY;
- 
--static RSA *rsa_cur;
-+struct my_rsa_st {
-+	BIGNUM *n;
-+	BIGNUM *e;
-+	BIGNUM *d;
-+	BIGNUM *p;
-+	BIGNUM *q;
-+	BIGNUM *dmp1;
-+	BIGNUM *dmq1;
-+	BIGNUM *iqmp;
-+};
-+
-+static struct my_rsa_st *rsa_cur;
- 
- void
- prsaerror(const char *s, ...)
-@@ -201,8 +213,12 @@ rsa_statement:
- 				rsa_cur->iqmp = NULL;
- 			}
- 		}
--		$$ = rsa_cur;
--		rsa_cur = RSA_new();
-+		RSA * rsa_tmp = RSA_new();
-+		RSA_set0_key(rsa_tmp, rsa_cur->n, rsa_cur->e, rsa_cur->d);
-+		RSA_set0_factors(rsa_tmp, rsa_cur->p, rsa_cur->q);
-+		RSA_set0_crt_params(rsa_tmp, rsa_cur->dmp1, rsa_cur->dmq1, rsa_cur->iqmp);
-+		$$ = rsa_tmp;
-+		memset(rsa_cur, 0, sizeof(struct my_rsa_st));
- 	}
- 	| TAG_PUB BASE64
- 	{
-@@ -351,10 +367,12 @@ prsa_parse_file(struct genlist *list, char *fname, enum rsa_key_type type)
- 	prsa_cur_fname = fname;
- 	prsa_cur_list = list;
- 	prsa_cur_type = type;
--	rsa_cur = RSA_new();
-+	rsa_cur = malloc(sizeof(struct my_rsa_st));
-+	memset(rsa_cur, 0, sizeof(struct my_rsa_st));
- 	ret = prsaparse();
- 	if (rsa_cur) {
--		RSA_free(rsa_cur);
-+		memset(rsa_cur, 0, sizeof(struct my_rsa_st));
-+		free(rsa_cur);
- 		rsa_cur = NULL;
- 	}
- 	fclose (fp);
-diff --git a/src/racoon/rsalist.c b/src/racoon/rsalist.c
-index f152c82..96e8363 100644
---- a/src/racoon/rsalist.c
-+++ b/src/racoon/rsalist.c
-@@ -52,6 +52,7 @@
- #include "genlist.h"
- #include "remoteconf.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
- 
- #ifndef LIST_FIRST
- #define LIST_FIRST(head)        ((head)->lh_first)
-@@ -98,7 +99,9 @@ rsa_key_dup(struct rsa_key *key)
- 		return NULL;
- 
- 	if (key->rsa) {
--		new->rsa = key->rsa->d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa);
-+		const BIGNUM *d;
-+		RSA_get0_key(key->rsa, NULL, NULL, &d);
-+		new->rsa = (d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa));
- 		if (new->rsa == NULL)
- 			goto dup_error;
- 	}
--- 
-2.16.1
-

+ 0 - 75
package/ipsec-tools/Config.in

@@ -1,75 +0,0 @@
-config BR2_PACKAGE_IPSEC_TOOLS
-	bool "ipsec-tools"
-	depends on BR2_USE_MMU # fork()
-	depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree
-	select BR2_PACKAGE_OPENSSL
-	select BR2_PACKAGE_FLEX
-	help
-	  This package is required to support IPSec for Linux 2.6+
-
-	  http://ipsec-tools.sourceforge.net/
-
-if BR2_PACKAGE_IPSEC_TOOLS
-
-config BR2_PACKAGE_IPSEC_TOOLS_ADMINPORT
-	bool "Enable racoonctl(8)"
-	default y
-	help
-	  Lets racoon to listen to racoon admin port, which is to
-	  be contacted by racoonctl(8).
-
-config BR2_PACKAGE_IPSEC_TOOLS_NATT
-	bool "Enable NAT-Traversal"
-	help
-	  This needs kernel support, which is available on Linux. On
-	  NetBSD, NAT-Traversal kernel support has not been integrated
-	  yet, you can get it from here:
-
-	  http://ipsec-tools.sourceforge.net/netbsd_nat-t.diff If you
-
-	  live in a country where software patents are legal, using
-	  NAT-Traversal might infringe a patent.
-
-config BR2_PACKAGE_IPSEC_TOOLS_FRAG
-	bool "Enable IKE fragmentation"
-	help
-	  Enable IKE fragmentation, which is a workaround for
-	  broken routers that drop fragmented packets
-
-config BR2_PACKAGE_IPSEC_TOOLS_DPD
-	bool "Enable DPD (Dead Peer Detection)"
-	help
-	  Enable dead peer detection support
-
-config BR2_PACKAGE_IPSEC_TOOLS_STATS
-	bool "Enable statistics logging function"
-	default y
-
-config BR2_PACKAGE_IPSEC_TOOLS_READLINE
-	bool "Enable readline input support"
-	select BR2_PACKAGE_READLINE
-
-config BR2_PACKAGE_IPSEC_TOOLS_HYBRID
-	bool "Enable hybrid, both mode-cfg and xauth support"
-	help
-	  Hybrid mode is required for successful interoperability
-	  (e.g. Cisco VPN Client).
-
-choice
-	prompt "Security context"
-	default BR2_PACKAGE_IPSEC_TOOLS_SECCTX_DISABLE
-	help
-	  Selects whether or not to enable security context support.
-
-config BR2_PACKAGE_IPSEC_TOOLS_SECCTX_DISABLE
-	bool "Disable security context support"
-
-config BR2_PACKAGE_IPSEC_TOOLS_SECCTX_ENABLE
-	bool "Enable SELinux security context support"
-
-config BR2_PACKAGE_IPSEC_TOOLS_SECCTX_KERNEL
-	bool "Enable kernel security context"
-
-endchoice
-
-endif

+ 0 - 6
package/ipsec-tools/ipsec-tools.hash

@@ -1,6 +0,0 @@
-# From http://sourceforge.net/projects/ipsec-tools/files/ipsec-tools/0.8.2/
-md5	d53ec14a0a3ece64e09e5e34b3350b41	ipsec-tools-0.8.2.tar.bz2
-sha1	7d92cae9fde59fb4f125636698c43b0a3df3d0f0	ipsec-tools-0.8.2.tar.bz2
-
-# Locally calculated
-sha256	3f4af4aef0b2599928bee9875935b8fad8449ddbb98ea7da74c20c3dff5cdef7  src/setkey/setkey.c

+ 0 - 85
package/ipsec-tools/ipsec-tools.mk

@@ -1,85 +0,0 @@
-################################################################################
-#
-# ipsec-tools
-#
-################################################################################
-
-IPSEC_TOOLS_VERSION = 0.8.2
-IPSEC_TOOLS_SOURCE = ipsec-tools-$(IPSEC_TOOLS_VERSION).tar.bz2
-IPSEC_TOOLS_SITE = http://sourceforge.net/projects/ipsec-tools/files/ipsec-tools/$(IPSEC_TOOLS_VERSION)
-IPSEC_TOOLS_LICENSE = BSD-3-Clause
-IPSEC_TOOLS_LICENSE_FILES = src/setkey/setkey.c
-IPSEC_TOOLS_INSTALL_STAGING = YES
-IPSEC_TOOLS_MAKE = $(MAKE1)
-IPSEC_TOOLS_DEPENDENCIES = openssl flex host-pkgconf host-flex host-bison
-# we patch configure.ac
-IPSEC_TOOLS_AUTORECONF = YES
-
-# 0004-CVE-2015-4047.patch
-IPSEC_TOOLS_IGNORE_CVES += CVE-2015-4047
-# 0005-CVE-2016-10396.patch
-IPSEC_TOOLS_IGNORE_CVES += CVE-2016-10396
-
-# configure hardcodes -Werror, so override CFLAGS on make invocation
-IPSEC_TOOLS_MAKE_OPTS = CFLAGS='$(TARGET_CFLAGS)'
-
-IPSEC_TOOLS_CONF_ENV = LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl`
-
-IPSEC_TOOLS_CONF_OPTS = \
-	  --without-libpam \
-	  --disable-gssapi \
-	  --with-kernel-headers=$(STAGING_DIR)/usr/include
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_ADMINPORT),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-adminport
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-adminport
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_NATT),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-natt
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-natt
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_FRAG),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-frag
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-frag
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_DPD),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-dpd
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-dpd
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_STATS),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-stats
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-stats
-endif
-
-ifneq ($(BR2_PACKAGE_IPSEC_TOOLS_READLINE),y)
-IPSEC_TOOLS_CONF_OPTS += --without-readline
-else
-IPSEC_TOOLS_DEPENDENCIES += readline
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_HYBRID),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-hybrid
-else
-IPSEC_TOOLS_CONF_OPTS += --disable-hybrid
-endif
-
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_SECCTX_DISABLE),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-security-context=no
-endif
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_SECCTX_ENABLE),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-security-context=yes
-endif
-ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_SECCTX_KERNEL),y)
-IPSEC_TOOLS_CONF_OPTS += --enable-security-context=kernel
-endif
-
-$(eval $(autotools-package))

+ 0 - 35
package/kmsxx/0001-fix-compiler-errors-with-gcc-10.patch

@@ -1,35 +0,0 @@
-From aa54634ce7cbbfc844de945e73a9f34cdcb9bb12 Mon Sep 17 00:00:00 2001
-From: Peter Trompeter <christoph@zen.fritz.box>
-Date: Fri, 15 May 2020 15:20:47 +0200
-Subject: [PATCH] fix compiler errors with gcc 10
-
-[Retrieved from:
-https://github.com/tomba/kmsxx/commit/aa54634ce7cbbfc844de945e73a9f34cdcb9bb12]
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- kms++/inc/kms++/pixelformats.h | 1 +
- kms++util/src/opts.cpp         | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/kms++/inc/kms++/pixelformats.h b/kms++/inc/kms++/pixelformats.h
-index 784717d..4e73d5d 100644
---- a/kms++/inc/kms++/pixelformats.h
-+++ b/kms++/inc/kms++/pixelformats.h
-@@ -2,6 +2,7 @@
- 
- #include <cstdint>
- #include <string>
-+#include <stdexcept>
- 
- namespace kms
- {
-diff --git a/kms++util/src/opts.cpp b/kms++util/src/opts.cpp
-index afef452..5a14b84 100644
---- a/kms++util/src/opts.cpp
-+++ b/kms++util/src/opts.cpp
-@@ -1,4 +1,5 @@
- #include <algorithm>
-+#include <stdexcept>
- 
- #include <unistd.h>
- #include <getopt.h>

+ 46 - 0
package/kmsxx/0001-meson-add-use-system-fmt-option.patch

@@ -0,0 +1,46 @@
+From 61db7d5520f50564da8f2c9ac952eadb31f70727 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Sun, 29 Nov 2020 11:13:41 +0100
+Subject: [PATCH] meson: add use-system-fmt option
+
+[Upstream: https://github.com/tomba/kmsxx/pull/60]
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ meson.build       | 10 +++++++---
+ meson_options.txt |  2 ++
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 9652009..29080f4 100644
+--- a/meson.build
++++ b/meson.build
+@@ -31,9 +31,13 @@ endif
+ 
+ add_global_link_arguments(link_arguments, language : 'cpp')
+ 
+-libfmt_includes = include_directories('ext/fmt/include')
+-libfmt_dep = declare_dependency(include_directories : libfmt_includes,
+-                                compile_args : '-DFMT_HEADER_ONLY')
++if get_option('use-system-fmt')
++    libfmt_dep = dependency('fmt')
++else
++    libfmt_includes = include_directories('ext/fmt/include')
++    libfmt_dep = declare_dependency(include_directories : libfmt_includes,
++                                    compile_args : '-DFMT_HEADER_ONLY')
++endif
+ 
+ pybind11_includes = include_directories('ext/pybind11/include')
+ pybind11_dep = declare_dependency(include_directories : pybind11_includes)
+diff --git a/meson_options.txt b/meson_options.txt
+index cd854ab..48176a8 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -3,3 +3,5 @@ option('pykms', type : 'feature', value : 'auto')
+ option('omap', type : 'feature', value : 'auto')
+ option('static-libc', type : 'boolean', value : false)
+ option('utils', type : 'boolean', value : true)
++
++option('use-system-fmt', type : 'boolean', value : false)
+-- 
+2.29.2
+

+ 0 - 27
package/kmsxx/0002-added-include-string-to-card.h-to-follow-gcc10-porti.patch

@@ -1,27 +0,0 @@
-From f7ee1e8c96ffbfc645487e483b928d250a7e79ec Mon Sep 17 00:00:00 2001
-From: Tobias Off <sebastianoff@web.de>
-Date: Thu, 8 Oct 2020 22:37:55 +0200
-Subject: [PATCH] added #include <string> to card.h to follow gcc10 porting
- guide
-
-[Upstream: https://github.com/tomba/kmsxx/commit/b53f9d383c9189a897c44cd88a8fc1b871fdc8a2.patch]
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- kms++/inc/kms++/card.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/kms++/inc/kms++/card.h b/kms++/inc/kms++/card.h
-index 90ad1f6..f055e27 100644
---- a/kms++/inc/kms++/card.h
-+++ b/kms++/inc/kms++/card.h
-@@ -3,6 +3,7 @@
- #include <cstdint>
- #include <vector>
- #include <map>
-+#include <string>
- 
- #include "decls.h"
- #include "pipeline.h"
--- 
-2.29.2
-

+ 43 - 0
package/kmsxx/0002-meson-add-use-system-pybind11-option.patch

@@ -0,0 +1,43 @@
+From 27f15549ce67194e4152c57db2b762b7a443b4c7 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Sun, 29 Nov 2020 11:14:41 +0100
+Subject: [PATCH] meson: add use-system-pybind11 option
+
+[Upstream: https://github.com/tomba/kmsxx/pull/60]
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ meson.build       | 8 ++++++--
+ meson_options.txt | 1 +
+ 2 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 29080f4..4b3e7c3 100644
+--- a/meson.build
++++ b/meson.build
+@@ -39,8 +39,12 @@ else
+                                     compile_args : '-DFMT_HEADER_ONLY')
+ endif
+ 
+-pybind11_includes = include_directories('ext/pybind11/include')
+-pybind11_dep = declare_dependency(include_directories : pybind11_includes)
++if get_option('use-system-pybind11')
++    pybind11_dep = dependency('pybind11')
++else
++    pybind11_includes = include_directories('ext/pybind11/include')
++    pybind11_dep = declare_dependency(include_directories : pybind11_includes)
++endif
+ 
+ libdrmomap_dep = dependency('libdrm_omap', required : get_option('omap'))
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 48176a8..095c6f2 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -5,3 +5,4 @@ option('static-libc', type : 'boolean', value : false)
+ option('utils', type : 'boolean', value : true)
+ 
+ option('use-system-fmt', type : 'boolean', value : false)
++option('use-system-pybind11', type : 'boolean', value : false)
+-- 
+2.29.2
+

+ 48 - 0
package/kmsxx/0003-meson-only-build-py-in-case-pykms-is-enabled.patch

@@ -0,0 +1,48 @@
+From 0ef36b2e22c2ac0331b3096b7adc69fb08044048 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Sun, 29 Nov 2020 11:37:26 +0100
+Subject: [PATCH] meson: only build py in case pykms is enabled
+
+[Upstream: https://github.com/tomba/kmsxx/pull/60]
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ meson.build | 16 ++++++++++------
+ 1 file changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 4b3e7c3..1810b17 100644
+--- a/meson.build
++++ b/meson.build
+@@ -39,11 +39,13 @@ else
+                                     compile_args : '-DFMT_HEADER_ONLY')
+ endif
+ 
+-if get_option('use-system-pybind11')
+-    pybind11_dep = dependency('pybind11')
+-else
+-    pybind11_includes = include_directories('ext/pybind11/include')
+-    pybind11_dep = declare_dependency(include_directories : pybind11_includes)
++if get_option('pykms').enabled()
++    if get_option('use-system-pybind11')
++        pybind11_dep = dependency('pybind11')
++    else
++        pybind11_includes = include_directories('ext/pybind11/include')
++        pybind11_dep = declare_dependency(include_directories : pybind11_includes)
++    endif
+ endif
+ 
+ libdrmomap_dep = dependency('libdrm_omap', required : get_option('omap'))
+@@ -55,7 +57,9 @@ if get_option('utils')
+     subdir('utils')
+ endif
+ 
+-subdir('py')
++if get_option('pykms').enabled()
++    subdir('py')
++endif
+ 
+ if get_option('kmscube')
+     subdir('kmscube')
+-- 
+2.29.2
+

+ 4 - 3
package/kmsxx/Config.in

@@ -1,9 +1,10 @@
 config BR2_PACKAGE_KMSXX
 	bool "kms++"
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
-	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 # linux/dma-buf.h
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
+	select BR2_PACKAGE_FMT
 	select BR2_PACKAGE_LIBDRM
 	help
 	  libkms++ is a C++11 library for kernel mode setting.
@@ -21,6 +22,6 @@ config BR2_PACKAGE_KMSXX_INSTALL_TESTS
 
 endif
 
-comment "kms++ needs a toolchain w/ threads, C++, gcc >= 4.8, headers >= 3.8"
+comment "kms++ needs a toolchain w/ threads, C++, gcc >= 4.8, headers >= 4.11"
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \
-		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
+		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11

+ 2 - 2
package/kmsxx/kmsxx.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  28892e50c1d1c83fddff9ec683e3bdbd465f5032d0014ceeab43563b813807e1  kmsxx-cb0786049f960f2bd383617151b01318e02e9ff9.tar.gz
-sha256  022b4d51da34a380d74dc24eea8e2c4e1a4c8776a52171f8d9e941cf56daf888  LICENSE
+sha256  4a682328b03c28ff1f6cfcafc48d30c3feb5ef98ed07e5dd3bbd9e6a1d4a47cc  kmsxx-548905611c130ea9d31929a0caf7a198d8bac462.tar.gz
+sha256  fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85  LICENSE

+ 29 - 45
package/kmsxx/kmsxx.mk

@@ -4,62 +4,46 @@
 #
 ################################################################################
 
-KMSXX_VERSION = cb0786049f960f2bd383617151b01318e02e9ff9
+KMSXX_VERSION = 548905611c130ea9d31929a0caf7a198d8bac462
 KMSXX_SITE = $(call github,tomba,kmsxx,$(KMSXX_VERSION))
 KMSXX_LICENSE = MPL-2.0
 KMSXX_LICENSE_FILES = LICENSE
 KMSXX_INSTALL_STAGING = YES
-KMSXX_DEPENDENCIES = libdrm host-pkgconf
-KMSXX_CONF_OPTS = -DKMSXX_ENABLE_PYTHON=OFF
-
-KMSXX_CXXFLAGS = $(TARGET_CXXFLAGS)
+KMSXX_DEPENDENCIES = fmt libdrm host-pkgconf
+KMSXX_CONF_OPTS = \
+	-Dkmscube=false \
+	-Dpykms=disabled \
+	-Domap=disabled \
+	-Duse-system-fmt=true \
+	-Duse-system-pybind11=true
+
+ifeq ($(BR2_STATIC_LIBS),y)
+KMSXX_CONF_OPTS += -Dstatic-libc=true
+else
+KMSXX_CONF_OPTS += -Dstatic-libc=false
+endif
 
 ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
-KMSXX_CXXFLAGS += -O0
+KMSXX_CXXFLAGS += $(TARGET_CXXFLAGS) -O0
 endif
 
-KMSXX_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(KMSXX_CXXFLAGS)"
-
 ifeq ($(BR2_PACKAGE_KMSXX_INSTALL_TESTS),y)
-KMSXX_TESTS = \
-	fbtest kmsblank kmscapture \
-	kmsprint kmstest kmsview wbcap \
-	wbm2m
-
-define KMSXX_INSTALL_TARGET_TESTS
-	$(foreach t,$(KMSXX_TESTS),\
-		$(INSTALL) -D -m 0755 $(@D)/bin/$(t) \
+KMSXX_CONF_OPTS += -Dutils=true
+# extra handling for some utils not installed by default
+KMSXX_EXTRA_UTILS = kmsview kmscapture omap-wbcap omap-wbm2m
+ifeq ($(BR2_PACKAGE_LIBEVDEV),y)
+KMSXX_DEPENDENCIES += libevdev
+KMSXX_EXTRA_UTILS += kmstouch
+endif
+define KMSXX_INSTALL_EXTRA_UTILS
+	$(foreach t,$(KMSXX_EXTRA_UTILS),\
+		$(INSTALL) -D -m 0755 $(@D)/build/utils/$(t) \
 			$(TARGET_DIR)/usr/bin/$(t)
 	)
 endef
+KMSXX_POST_INSTALL_TARGET_HOOKS += KMSXX_INSTALL_EXTRA_UTILS
+else
+KMSXX_CONF_OPTS += -Dutils=false
 endif
 
-KMSXX_LIBS = kms++ kms++util
-
-define KMSXX_INSTALL_TARGET_CMDS
-	$(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),
-		$(foreach l,$(KMSXX_LIBS),\
-			$(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \
-				$(TARGET_DIR)/usr/lib/lib$(l).so
-		)
-	)
-	$(KMSXX_INSTALL_TARGET_TESTS)
-endef
-
-# kmsxx only builds shared or static libraries, so when
-# BR2_SHARED_STATIC_LIBS=y, we don't have any static library to
-# install
-define KMSXX_INSTALL_STAGING_CMDS
-	$(foreach l,$(KMSXX_LIBS),\
-		$(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),
-			$(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \
-				$(STAGING_DIR)/usr/lib/lib$(l).so)
-		$(if $(BR2_STATIC_LIBS),
-			$(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).a \
-				$(STAGING_DIR)/usr/lib/lib$(l).a)
-		mkdir -p $(STAGING_DIR)/usr/include/$(l)
-		cp -dpfr $(@D)/$(l)/inc/$(l)/* $(STAGING_DIR)/usr/include/$(l)/
-	)
-endef
-
-$(eval $(cmake-package))
+$(eval $(meson-package))

+ 3 - 3
package/libbluray/libbluray.hash

@@ -1,4 +1,4 @@
-# From http://download.videolan.org/pub/videolan/libbluray/1.2.0/libbluray-1.2.0.tar.bz2.sha512
-sha512 d10413b6b86ff2d2e7c4b0103546f2142727cc5209ddb7b227aa74e27384f2e0b9abee37bf8ccc5b0cdfcaeebfb0669cf20903a247df278a8ad6dbd27469d324  libbluray-1.2.0.tar.bz2
+# From http://download.videolan.org/pub/videolan/libbluray/1.2.1/libbluray-1.2.1.tar.bz2.sha512
+sha512  e9eeee433034266e88c05ae3469c0bd2bf700d7f16e17ad706f48426c143c823e83c16ab79a637f1e85e4eb858aa0577630671f87ba35d179db2a1d8bc8545c4  libbluray-1.2.1.tar.bz2
 # Locally computed
-sha256 b3aa400aca6d2ba1f0bd03bd98d03d1fe7489a3bbb26969d72016360af8a5c9d  COPYING
+sha256  b3aa400aca6d2ba1f0bd03bd98d03d1fe7489a3bbb26969d72016360af8a5c9d  COPYING

+ 1 - 1
package/libbluray/libbluray.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBBLURAY_VERSION = 1.2.0
+LIBBLURAY_VERSION = 1.2.1
 LIBBLURAY_SITE = http://download.videolan.org/pub/videolan/libbluray/$(LIBBLURAY_VERSION)
 LIBBLURAY_SOURCE = libbluray-$(LIBBLURAY_VERSION).tar.bz2
 LIBBLURAY_INSTALL_STAGING = YES

+ 0 - 84
package/libdrm/0003-xf86drm.c-fix-build-failure.patch

@@ -1,84 +0,0 @@
-From c7d89412884de2dbfa543720d185027377e62f21 Mon Sep 17 00:00:00 2001
-From: Heiko Thiery <heiko.thiery@gmail.com>
-Date: Fri, 5 Jun 2020 23:46:52 +0200
-Subject: [PATCH] xf86drm.c: fix build failure
-
-./xf86drm.c: In function 'drmNodeIsDRM':
-../xf86drm.c:2825:7: error: "__FreeBSD__" is not defined [-Werror=undef]
- #elif __FreeBSD__
-       ^
-../xf86drm.c: In function 'drmGetMinorNameForFD':
-../xf86drm.c:2938:7: error: "__FreeBSD__" is not defined [-Werror=undef]
- #elif __FreeBSD__
-       ^
-../xf86drm.c: In function 'drmParsePciBusInfo':
-../xf86drm.c:3258:7: error: "__FreeBSD__" is not defined [-Werror=undef]
- #elif __FreeBSD__
-       ^
-../xf86drm.c: In function 'drmParsePciDeviceInfo':
-../xf86drm.c:3427:7: error: "__FreeBSD__" is not defined [-Werror=undef]
- #elif __FreeBSD__
-       ^
-../xf86drm.c: In function 'drmGetDeviceNameFromFd2':
-../xf86drm.c:4305:7: error: "__FreeBSD__" is not defined [-Werror=undef]
- #elif __FreeBSD__
-       ^
-
-Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
-[A merge-request with this fix is opened at https://gitlab.freedesktop.org/mesa/drm/-/merge_requests/75]
----
- xf86drm.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/xf86drm.c b/xf86drm.c
-index 07a18c44..50a6f092 100644
---- a/xf86drm.c
-+++ b/xf86drm.c
-@@ -2822,7 +2822,7 @@ static bool drmNodeIsDRM(int maj, int min)
-     snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device/drm",
-              maj, min);
-     return stat(path, &sbuf) == 0;
--#elif __FreeBSD__
-+#elif defined(__FreeBSD__)
-     char name[SPECNAMELEN];
- 
-     if (!devname_r(makedev(maj, min), S_IFCHR, name, sizeof(name)))
-@@ -2935,7 +2935,7 @@ static char *drmGetMinorNameForFD(int fd, int type)
- 
-     closedir(sysdir);
-     return NULL;
--#elif __FreeBSD__
-+#elif defined(__FreeBSD__)
-     struct stat sbuf;
-     char dname[SPECNAMELEN];
-     const char *mname;
-@@ -3255,7 +3255,7 @@ static int drmParsePciBusInfo(int maj, int min, drmPciBusInfoPtr info)
-     info->func = pinfo.func;
- 
-     return 0;
--#elif __FreeBSD__
-+#elif defined(__FreeBSD__)
-     return get_sysctl_pci_bus_info(maj, min, info);
- #else
- #warning "Missing implementation of drmParsePciBusInfo"
-@@ -3424,7 +3424,7 @@ static int drmParsePciDeviceInfo(int maj, int min,
-     device->subdevice_id = pinfo.subdevice_id;
- 
-     return 0;
--#elif __FreeBSD__
-+#elif defined(__FreeBSD__)
-     drmPciBusInfo info;
-     struct pci_conf_io pc;
-     struct pci_match_conf patterns[1];
-@@ -4302,7 +4302,7 @@ drm_public char *drmGetDeviceNameFromFd2(int fd)
-     free(value);
- 
-     return strdup(path);
--#elif __FreeBSD__
-+#elif defined(__FreeBSD__)
-     return drmGetDeviceNameFromFd(fd);
- #else
-     struct stat      sbuf;
--- 
-2.20.1
-

+ 3 - 3
package/libdrm/libdrm.hash

@@ -1,3 +1,3 @@
-# From https://lists.freedesktop.org/archives/dri-devel/2020-May/267255.html
-sha256  8bcbf9336c28e393d76c1f16d7e79e394a7fce8a2e929d52d3ad7ad8525ba05b  libdrm-2.4.102.tar.xz
-sha512  386afd228efd809fe32776a6ff5d9dd95d1409a6a6a89b3806a3b42ed27e84f1e090f3b7834973f834d6b0d1342b7034447fe8690d072f85f03292d7795c3e0c  libdrm-2.4.102.tar.xz
+# From https://lists.freedesktop.org/archives/dri-devel/2020-November/285471.html
+sha256 3fe0affdba6460166a7323290c18cf68e9b59edcb520722826cb244e9cb50222  libdrm-2.4.103.tar.xz
+sha512 15b098b962008271400692b6b15ecb7e22676f8698e0220ad969735ac2315ccc737d19558afb6abda82bae15117e5f306c048184a2369f434b85ecaa670ca885  libdrm-2.4.103.tar.xz

+ 1 - 1
package/libdrm/libdrm.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBDRM_VERSION = 2.4.102
+LIBDRM_VERSION = 2.4.103
 LIBDRM_SOURCE = libdrm-$(LIBDRM_VERSION).tar.xz
 LIBDRM_SITE = https://dri.freedesktop.org/libdrm
 LIBDRM_LICENSE = MIT

+ 3 - 5
package/libinput/libinput.hash

@@ -1,8 +1,6 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2020-November/041644.html
-md5  562614e91c10c75ab1c2b71e5d27f076  libinput-1.16.3.tar.xz
-sha1  ee1e93ee647bdd4598a5910eb654592563657d66  libinput-1.16.3.tar.xz
-sha256  dc5e1ae51ec1cc635ca96f61118b0f07dfea783cab0747a60f3555068bb077e4  libinput-1.16.3.tar.xz
-sha512  cdf87988b24dc0a44b7b6ed3e15e70c7702bf65f1cfe257924967677c7a1f1485011a9e30254ba8962c83885de78f824e7955cedb07322676332d42532ec4a39  libinput-1.16.3.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2020-November/041664.html
+sha256  65923a06d5a8970e4a999c4668797b9b689614b62b1d44432ab1c87b65e39e29  libinput-1.16.4.tar.xz
+sha512  a95a3bcf58a9298946d15f4f2fd93dc5807d3042f8797950a1ffd96d3c979b55a764f035a9f7680d0ea400b033698c322eb61a4387dbc280db6110ffd3e137ee  libinput-1.16.4.tar.xz
 
 # License files
 sha256  70d5b1dfe5a9c50a1f2ea91b1c2b1c85d876c5c92339585edbb85cf69e945e14  COPYING

+ 1 - 1
package/libinput/libinput.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBINPUT_VERSION = 1.16.3
+LIBINPUT_VERSION = 1.16.4
 LIBINPUT_SOURCE = libinput-$(LIBINPUT_VERSION).tar.xz
 LIBINPUT_SITE = http://www.freedesktop.org/software/libinput
 LIBINPUT_DEPENDENCIES = host-pkgconf libevdev mtdev udev

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels