dnsmasq: use nettle ecc_curve access functions
authorHans Dedecker <dedeckeh@gmail.com>
Fri, 9 Aug 2019 19:25:37 +0000 (21:25 +0200)
committerRISCi_ATOM <bob@bobcall.me>
Fri, 13 Sep 2019 20:05:37 +0000 (16:05 -0400)
Fixes compile issues with nettle 3.5.1

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 63ced140484e072dddbba39bb729adc98d94d522)

package/network/services/dnsmasq/Makefile
package/network/services/dnsmasq/patches/050-crypto-use-nettle-ecc_curve-access-functions.patch [new file with mode: 0644]

index c04d96fff257e8ce499b8da4a3a4e4fa5418c69e..dc20ada292ab8db9aadb406fc30a828c3bd8c8ba 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=dnsmasq
 PKG_UPSTREAM_VERSION:=2.80
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
-PKG_RELEASE:=13
+PKG_RELEASE:=14
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz
 PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
diff --git a/package/network/services/dnsmasq/patches/050-crypto-use-nettle-ecc_curve-access-functions.patch b/package/network/services/dnsmasq/patches/050-crypto-use-nettle-ecc_curve-access-functions.patch
new file mode 100644 (file)
index 0000000..c52a6bc
--- /dev/null
@@ -0,0 +1,35 @@
+From 1f55b09dd88bc65b3ee6e3a665bc844a5a9a9e8d Mon Sep 17 00:00:00 2001
+From: Hans Dedecker <dedeckeh@gmail.com>
+Date: Fri, 9 Aug 2019 21:08:17 +0200
+Subject: [PATCH] crypto: use nettle ecc_curve access functions
+
+Nettle 3.5.1 has made ecc_curve definitions (nettle_secp_192r1,
+nettle_secp_224r1, nettle_secp_256r1, ...) private and forces
+users to make use of the accessor functions (nettle_get_secp_192r1,
+...) to retrieve the specific ecc_curve structs.
+
+Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
+---
+ src/crypto.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/src/crypto.c
++++ b/src/crypto.c
+@@ -294,7 +294,7 @@ static int dnsmasq_ecdsa_verify(struct b
+         if (!(key_256 = whine_malloc(sizeof(struct ecc_point))))
+           return 0;
+         
+-        nettle_ecc_point_init(key_256, &nettle_secp_256r1);
++        nettle_ecc_point_init(key_256, nettle_get_secp_256r1());
+       }
+       
+       key = key_256;
+@@ -307,7 +307,7 @@ static int dnsmasq_ecdsa_verify(struct b
+         if (!(key_384 = whine_malloc(sizeof(struct ecc_point))))
+           return 0;
+         
+-        nettle_ecc_point_init(key_384, &nettle_secp_384r1);
++        nettle_ecc_point_init(key_384, nettle_get_secp_384r1());
+       }
+       
+       key = key_384;