mirror of
https://github.com/zeromq/libzmq.git
synced 2025-10-06 03:01:54 +02:00
Problem: use of libsodium vs. tweetnacl is confused
It's unclear which we need and in the source code, conditional code treats tweetnacl as a subclass of libsodium, which is inaccurate. Solution: redesign the configure/cmake API for this: * tweetnacl is present by default and cannot be enabled * libsodium can be enabled using --with-libsodium, which replaces the built-in tweetnacl * CURVE encryption can be disabled entirely using --enable-curve=no The macros we define in platform.hpp are: ZMQ_HAVE_CURVE 1 // When CURVE is enabled HAVE_LIBSODIUM 1 // When we are using libsodium HAVE_TWEETNACL 1 // When we're using tweetnacl (default) As of this patch, the default build of libzmq always has CURVE security, and always uses tweetnacl.
This commit is contained in:
@@ -102,11 +102,10 @@ static void zap_handler (void *handler)
|
||||
|
||||
int main (void)
|
||||
{
|
||||
#ifndef HAVE_LIBSODIUM
|
||||
printf ("libsodium not installed, skipping CURVE test\n");
|
||||
#ifndef ZMQ_HAVE_CURVE
|
||||
printf ("CURVE encryption not installed, skipping test\n");
|
||||
return 0;
|
||||
#endif
|
||||
|
||||
// Generate new keypairs for this test
|
||||
int rc = zmq_curve_keypair (client_public, client_secret);
|
||||
assert (rc == 0);
|
||||
|
Reference in New Issue
Block a user