[zeromq-dev] czmq master HEAD / zmq 4.0.4: make check assertion fail

Pieter Hintjens ph at imatix.com
Fri Jun 27 23:38:16 CEST 2014


Fix is here: https://github.com/zeromq/czmq/pull/536

On Fri, Jun 27, 2014 at 10:38 PM, Pieter Hintjens <ph at imatix.com> wrote:
> I'll give it a shot...
>
> On Fri, Jun 27, 2014 at 5:15 PM, Sven-Thorsten Dietrich
> <thebigcorporation at gmail.com> wrote:
>>
>> Error running make check:
>>
>> Running CZMQ selftests...
>>  * zrex: OK
>> ...
>>  * zgossip: OK
>> lt-czmq_selftest: zcert.c:65: zcert_new: Assertion `rc == 0' failed.
>>  * zcert: /bin/bash: line 5:  5981 Aborted                 ${dir}$tst
>> FAIL: czmq_selftest
>> ============================================
>> 1 of 1 test failed
>> Please report to zeromq-dev at lists.zeromq.org
>> ============================================
>> make[2]: *** [check-TESTS] Error 1
>> make[2]: Leaving directory `/home/sven/checkout/build-iso/pkgs/libczmq/src'
>> make[1]: *** [check-am] Error 2
>> make[1]: Leaving directory `/home/sven/checkout/build-iso/pkgs/libczmq/src'
>> make: *** [check-recursive] Error 1
>>
>>
>> Platform is Debian 7.5 standard gcc building _without_ libsodium.
>>
>> zcert_new (void)
>> {
>>     zcert_t *self = (zcert_t *) zmalloc (sizeof (zcert_t));
>>     assert (self);
>>
>>     //  Initialize metadata, even if keys aren't working
>>     self->metadata = zhash_new ();
>>     zhash_autofree (self->metadata);
>>
>> #if (ZMQ_VERSION_MAJOR == 4)
>>     int rc = (self->public_txt, self->secret_txt);
>>     assert (rc == 0);
>>     zmq_z85_decode (self->public_key, self->public_txt);
>>     zmq_z85_decode (self->secret_key, self->secret_txt);
>> #else
>>     strcpy (self->public_txt, "0000000000000000000000000000000000000000");
>>     strcpy (self->secret_txt, "0000000000000000000000000000000000000000");
>> #endif
>>     return self;
>> }
>>
>> and zmq has
>>
>> int zmq_curve_keypair (char *z85_public_key, char *z85_secret_key)
>> {
>> #ifdef HAVE_LIBSODIUM
>>
>> ...
>> #else // requires libsodium
>>     (void) z85_public_key, (void) z85_secret_key;
>>     errno = ENOTSUP;
>>     return -1;
>> #endif
>> }
>>
>> so I'll always hit the return -1.
>>
>> Is there a suggested workaround for building without libsodium?
>>
>> otherwise it would seem, that correctly supported ! HAVE_LIBSODIUM should not be calling into zcert_new from make check.
>>
>> I'm fine adding libsodium, but wondering what the bigger picture is when libsodium is not present, there seem to be some other related fixes in the commit logs.
>>
>> Thanks
>>
>> Sven
>>
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev



More information about the zeromq-dev mailing list