summaryrefslogtreecommitdiff
path: root/net/zeromq
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2015-11-24 11:01:34 +0000
committerwiz <wiz@pkgsrc.org>2015-11-24 11:01:34 +0000
commit494b563ebc2e9e40cb795840c2d749705eacc2c5 (patch)
tree2f1533708433450f86d7ce9bbfd3ed953eb44370 /net/zeromq
parent20aae3e93967231f6483931a10db40ce4b175d6f (diff)
downloadpkgsrc-494b563ebc2e9e40cb795840c2d749705eacc2c5.tar.gz
Add upstream patch to fix build with libsodium-1.0.6.
https://github.com/zeromq/zeromq4-1/commit/89d4e995ef92d5cb3d0f0373ec7d80c2ad7fa0d3
Diffstat (limited to 'net/zeromq')
-rw-r--r--net/zeromq/distinfo4
-rw-r--r--net/zeromq/patches/patch-src_curve__client.cpp37
-rw-r--r--net/zeromq/patches/patch-src_curve__server.cpp37
3 files changed, 77 insertions, 1 deletions
diff --git a/net/zeromq/distinfo b/net/zeromq/distinfo
index 220a81428e1..567186ccbc6 100644
--- a/net/zeromq/distinfo
+++ b/net/zeromq/distinfo
@@ -1,9 +1,11 @@
-$NetBSD: distinfo,v 1.18 2015/11/04 00:35:47 agc Exp $
+$NetBSD: distinfo,v 1.19 2015/11/24 11:01:34 wiz Exp $
SHA1 (zeromq-4.1.3.tar.gz) = b7185724f2fd56d0face50047757ac2a04d26ca4
RMD160 (zeromq-4.1.3.tar.gz) = fbfe9c0fe9a141c9b4cf282b89019f9df47079de
SHA512 (zeromq-4.1.3.tar.gz) = 2c993d18ea44e1cba890e024176af65b85b842ca4f8a22d319be4ace8388ab8828dd706b065f02754025bf271b1d7aa878c3f6655878248f7826452cb2a6134c
Size (zeromq-4.1.3.tar.gz) = 1372069 bytes
SHA1 (patch-configure) = 1dc8623eb06a167b3559ae950a9dbf1e19a29b6d
+SHA1 (patch-src_curve__client.cpp) = 72503a9649e6e02bd17d78109aa8b396eb7b0049
+SHA1 (patch-src_curve__server.cpp) = 7acd371d1e8ec6064d086c2dc503cdd0ec6c9a58
SHA1 (patch-src_platform.hpp.in) = 767370bd997310cddeb7ee1f759bec1a638974e0
SHA1 (patch-src_tcp__address.cpp) = ad1c1ec9b724c3bd7f0fae15c296e0ec33b4267a
diff --git a/net/zeromq/patches/patch-src_curve__client.cpp b/net/zeromq/patches/patch-src_curve__client.cpp
new file mode 100644
index 00000000000..1c3c023216d
--- /dev/null
+++ b/net/zeromq/patches/patch-src_curve__client.cpp
@@ -0,0 +1,37 @@
+$NetBSD: patch-src_curve__client.cpp,v 1.1 2015/11/24 11:01:34 wiz Exp $
+
+Problem: return code of sodium_init() is not checked.
+
+There are two todo comments in curve_client.cpp and curve_server.cpp that suggest
+checking the return code of sodium_init() call. sodium_init() returns -1 on error,
+0 on success and 1 if it has been called before and is already initalized:
+https://github.com/jedisct1/libsodium/blob/master/src/libsodium/sodium/core.c
+
+https://github.com/zeromq/zeromq4-1/commit/89d4e995ef92d5cb3d0f0373ec7d80c2ad7fa0d3
+
+--- src/curve_client.cpp.orig 2015-06-15 09:43:08.000000000 +0000
++++ src/curve_client.cpp
+@@ -48,6 +48,7 @@ zmq::curve_client_t::curve_client_t (con
+ cn_peer_nonce(1),
+ sync()
+ {
++ int rc;
+ memcpy (public_key, options_.curve_public_key, crypto_box_PUBLICKEYBYTES);
+ memcpy (secret_key, options_.curve_secret_key, crypto_box_SECRETKEYBYTES);
+ memcpy (server_key, options_.curve_server_key, crypto_box_PUBLICKEYBYTES);
+@@ -57,12 +58,12 @@ zmq::curve_client_t::curve_client_t (con
+ unsigned char tmpbytes[4];
+ randombytes(tmpbytes, 4);
+ #else
+- // todo check return code
+- sodium_init();
++ rc = sodium_init ();
++ zmq_assert (rc != -1);
+ #endif
+
+ // Generate short-term key pair
+- const int rc = crypto_box_keypair (cn_public, cn_secret);
++ rc = crypto_box_keypair (cn_public, cn_secret);
+ zmq_assert (rc == 0);
+ }
+
diff --git a/net/zeromq/patches/patch-src_curve__server.cpp b/net/zeromq/patches/patch-src_curve__server.cpp
new file mode 100644
index 00000000000..4180c5bda71
--- /dev/null
+++ b/net/zeromq/patches/patch-src_curve__server.cpp
@@ -0,0 +1,37 @@
+$NetBSD: patch-src_curve__server.cpp,v 1.1 2015/11/24 11:01:34 wiz Exp $
+
+Problem: return code of sodium_init() is not checked.
+
+There are two todo comments in curve_client.cpp and curve_server.cpp that suggest
+checking the return code of sodium_init() call. sodium_init() returns -1 on error,
+0 on success and 1 if it has been called before and is already initalized:
+https://github.com/jedisct1/libsodium/blob/master/src/libsodium/sodium/core.c
+
+https://github.com/zeromq/zeromq4-1/commit/89d4e995ef92d5cb3d0f0373ec7d80c2ad7fa0d3
+
+--- src/curve_server.cpp.orig 2015-06-15 09:43:08.000000000 +0000
++++ src/curve_server.cpp
+@@ -52,6 +52,7 @@ zmq::curve_server_t::curve_server_t (ses
+ cn_peer_nonce(1),
+ sync()
+ {
++ int rc;
+ // Fetch our secret key from socket options
+ memcpy (secret_key, options_.curve_secret_key, crypto_box_SECRETKEYBYTES);
+ scoped_lock_t lock (sync);
+@@ -60,12 +61,12 @@ zmq::curve_server_t::curve_server_t (ses
+ unsigned char tmpbytes[4];
+ randombytes(tmpbytes, 4);
+ #else
+- // todo check return code
+- sodium_init();
++ rc = sodium_init ();
++ zmq_assert (rc != -1);
+ #endif
+
+ // Generate short-term key pair
+- const int rc = crypto_box_keypair (cn_public, cn_secret);
++ rc = crypto_box_keypair (cn_public, cn_secret);
+ zmq_assert (rc == 0);
+ }
+