View Issue Details

IDProjectCategoryView StatusLast Update
0011559Talerexchangepublic2026-06-26 15:47
Reporterapteryx Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformGNU/LinuxOSGuix SystemOS Versionlatest
Target Version1.6Fixed in Version1.6 
Summary0011559: Build fails with latest gnunet (0.27.0) / test suite build fails with latest gnunet commit (31e20e2e6ab33a6cf18cc27cd8d5dd51e1b1
DescriptionWhen building taler-exchange 1.6.5 (latest), it wants an unreleased commit of gnunet, otherwise with 0.27.0 it fails to build with:

[1/796] gcc -Isrc/util/libtalerutil.so.13.p -Isrc/util -I../source/src/util -Isrc/include -I../source/src/include -I. -I../source -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O2 -g -Wall -Wno-address-of-packed-member -DHAVE_CONFIG_H -fPIC -MD -MQ src/util/libtalerutil.so.13.p/tokens.c.o -MF src/util/libtalerutil.so.13.p/tokens.c.o.d -o src/util/libtalerutil.so.13.p/tokens.c.o -c ../source/src/util/tokens.c
FAILED: [code=1] src/util/libtalerutil.so.13.p/tokens.c.o
gcc -Isrc/util/libtalerutil.so.13.p -Isrc/util -I../source/src/util -Isrc/include -I../source/src/include -I. -I../source -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O2 -g -Wall -Wno-address-of-packed-member -DHAVE_CONFIG_H -fPIC -MD -MQ src/util/libtalerutil.so.13.p/tokens.c.o -MF src/util/libtalerutil.so.13.p/tokens.c.o.d -o src/util/libtalerutil.so.13.p/tokens.c.o -c ../source/src/util/tokens.c
../source/src/util/tokens.c: In function ‘TALER_token_use_setup_random’:
../source/src/util/tokens.c:50:31: error: incompatible type for argument 1 of ‘GNUNET_CRYPTO_random_block’
   50 | GNUNET_CRYPTO_random_block (master,
      | ^~~~~~
      | |
      | struct TALER_TokenUseMasterSecretP *
In file included from /gnu/store/vhk60p6072yzm6k0g4pby79s7sgalrwv-gnunet-0.27.0/include/gnunet/gnunet_util_lib.h:70,
                 from ../source/src/include/taler/taler_util.h:30,
                 from ../source/src/util/tokens.c:21:
/gnu/store/vhk60p6072yzm6k0g4pby79s7sgalrwv-gnunet-0.27.0/include/gnunet/gnunet_crypto_lib.h:865:56: note: expected ‘enum GNUNET_CRYPTO_Quality’ but argument is of type ‘struct TALER_TokenUseMasterSecretP *’
  865 | GNUNET_CRYPTO_random_block (enum GNUNET_CRYPTO_Quality mode,
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
../source/src/util/tokens.c:51:31: error: passing argument 2 of ‘GNUNET_CRYPTO_random_block’ makes pointer from integer without a cast [-Wint-conversion]
   51 | sizeof (*master));
      | ^~~~~~~~~~~~~~~~
      | |
      | long unsigned int
/gnu/store/vhk60p6072yzm6k0g4pby79s7sgalrwv-gnunet-0.27.0/include/gnunet/gnunet_crypto_lib.h:866:35: note: expected ‘void *’ but argument is of type ‘long unsigned int’
  866 | void *buffer,
      | ~~~~~~^~~~~~
../source/src/util/tokens.c:50:3: error: too few arguments to function ‘GNUNET_CRYPTO_random_block’
   50 | GNUNET_CRYPTO_random_block (master,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
/gnu/store/vhk60p6072yzm6k0g4pby79s7sgalrwv-gnunet-0.27.0/include/gnunet/gnunet_crypto_lib.h:865:1: note: declared here
  865 | GNUNET_CRYPTO_random_block (enum GNUNET_CRYPTO_Quality mode,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
[2/796] gcc -Isrc/util/libtalerutil.so.13.p -Isrc/util -I../source/src/util -Isrc/include -I../source/src/include -I. -I../source -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O2 -g -Wall -Wno-address-of-packed-member -DHAVE_CONFIG_H -fPIC -MD -MQ src/util/libtalerutil.so.13.p/crypto_contract.c.o -MF src/util/libtalerutil.so.13.p/crypto_contract.c.o.d -o src/util/libtalerutil.so.13.p/crypto_contract.c.o -c ../source/src/util/crypto_contract.c

That's resolved when updating gnunet to its latest commit 31e20e2e6ab33a6cf18cc27cd8d5dd51e1b1e22a, but then the test suite of taler (even from its latest commit, a19033395640e06ff7191c1660d9454fe2a1b710):

FAILED: [code=1] src/util/test_crypto.p/test_crypto.c.o
gcc -Isrc/util/test_crypto.p -Isrc/util -I../source/src/util -Isrc/include -I../source/src/include -I. -I../source -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O2 -g -Wall -Wno-address-of-packed-member -DHAVE_CONFIG_H -MD -MQ src/util/test_crypto.p/test_crypto.c.o -MF src/util/test_crypto.p/test_crypto.c.o.d -o src/util/test_crypto.p/test_crypto.c.o -c ../source/src/util/test_crypto.c
../source/src/util/test_crypto.c: In function ‘test_planchets_rsa’:
../source/src/util/test_crypto.c:140:33: error: incompatible type for argument 1 of ‘GNUNET_CRYPTO_random_block’
  140 | GNUNET_CRYPTO_random_block (seed,
      | ^~~~
      | |
      | struct GNUNET_HashCode
In file included from /gnu/store/n78gs0lx45sy1bn23q137fv4009aqgl1-gnunet-0.27.0-0.31e20e2/include/gnunet/gnunet_util_lib.h:70,
                 from ../source/src/include/taler/taler_util.h:30,
                 from ../source/src/util/test_crypto.c:22:
/gnu/store/n78gs0lx45sy1bn23q137fv4009aqgl1-gnunet-0.27.0-0.31e20e2/include/gnunet/gnunet_crypto_lib.h:835:35: note: expected ‘void *’ but argument is of type ‘struct GNUNET_HashCode’
  835 | GNUNET_CRYPTO_random_block (void *buffer,
      | ~~~~~~^~~~~~
../source/src/util/test_crypto.c: In function ‘test_planchets_cs’:
../source/src/util/test_crypto.c:254:9: note: ‘#pragma message: phase out TALER_cs_withdraw_nonce_derive’
  254 | #pragma message "phase out TALER_cs_withdraw_nonce_derive"
      | ^~~~~~~
Steps To Reproduce1. Build exchange 1.6.5 with gnunet 0.27.0 -> first failure during build.
2. Build exchange 1.6.5 (or latest) with gnunet at commit 31e20e2e6ab33a6cf18cc27cd8d5dd51e1b1e22a -> test suite fails to build
TagsNo tags attached.

Activities

apteryx

2026-06-26 06:21

reporter   ~0028984

Looks like 548ebf45a addressed that, probably forgot that area of the test suite.

apteryx

2026-06-26 06:44

reporter   ~0028985

The attached patch resolves the build failure in the test suite.
0001-tests-Fix-build.patch (927 bytes)   
From 9473ac8a74b7caae35acd839592c7036c6509373 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim@guixotic.coop>
Date: Fri, 26 Jun 2026 13:42:12 +0900
Subject: [PATCH] tests: Fix build.

This is a follow-up to commit 548ebf45a, which changed the
GNUNET_CRYPTO_random_block API.
---
 src/util/test_crypto.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/util/test_crypto.c b/src/util/test_crypto.c
index 1d15a9916..53bde5efb 100644
--- a/src/util/test_crypto.c
+++ b/src/util/test_crypto.c
@@ -137,7 +137,7 @@ test_planchets_rsa (uint8_t age)
     struct TALER_AgeCommitmentProof acp;
     struct GNUNET_HashCode seed;
 
-    GNUNET_CRYPTO_random_block (seed,
+    GNUNET_CRYPTO_random_block (&seed,
                                 sizeof(seed));
     TALER_age_restriction_commit (&age_mask,
                                   age,

base-commit: a19033395640e06ff7191c1660d9454fe2a1b710
-- 
2.54.0

0001-tests-Fix-build.patch (927 bytes)   

Christian Grothoff

2026-06-26 15:47

manager   ~0028990

Patch applied.

Christian Grothoff

2026-06-26 15:47

manager   ~0028991

No further change needed, except a GNUnet release :-)

Issue History

Date Modified Username Field Change
2026-06-26 04:42 apteryx New Issue
2026-06-26 06:21 apteryx Note Added: 0028984
2026-06-26 06:44 apteryx Note Added: 0028985
2026-06-26 06:44 apteryx File Added: 0001-tests-Fix-build.patch
2026-06-26 15:47 Christian Grothoff Note Added: 0028990
2026-06-26 15:47 Christian Grothoff Assigned To => Christian Grothoff
2026-06-26 15:47 Christian Grothoff Status new => resolved
2026-06-26 15:47 Christian Grothoff Resolution open => fixed
2026-06-26 15:47 Christian Grothoff Fixed in Version => 1.6
2026-06-26 15:47 Christian Grothoff Note Added: 0028991
2026-06-26 15:47 Christian Grothoff Target Version => 1.6