exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 9704be7f84b6471aa3ccae715a53783f411a03e5
parent b74e8c970e6617d4a5d9c6bdd69787cb4be715e9
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Sat, 11 Jul 2026 17:45:23 +0200

-fix leaks

Diffstat:
Msrc/lib/exchange_api_post-reveal-melt.c | 4++++
Msrc/lib/exchange_api_post-reveal-withdraw.c | 2++
Msrc/lib/exchange_api_post-withdraw_blinded.c | 2++
3 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/src/lib/exchange_api_post-reveal-melt.c b/src/lib/exchange_api_post-reveal-melt.c @@ -176,6 +176,10 @@ reveal_melt_ok ( &coin)) { GNUNET_break_op (0); + for (unsigned int k = 0; k < i; k++) + TALER_denom_sig_free (&coins[k].sig); + for (unsigned int k = 0; k < mrh->num_expected_coins; k++) + TALER_blinded_denom_sig_free (&blind_sigs[k]); GNUNET_JSON_parse_free (spec); return GNUNET_SYSERR; } diff --git a/src/lib/exchange_api_post-reveal-withdraw.c b/src/lib/exchange_api_post-reveal-withdraw.c @@ -151,6 +151,8 @@ reveal_withdraw_ok ( NULL, NULL)) { GNUNET_break_op (0); + for (size_t k = 0; k < n; k++) + TALER_blinded_denom_sig_free (&denom_sigs[k]); return GNUNET_SYSERR; } } diff --git a/src/lib/exchange_api_post-withdraw_blinded.c b/src/lib/exchange_api_post-withdraw_blinded.c @@ -232,6 +232,8 @@ withdraw_blinded_ok ( NULL, NULL)) { GNUNET_break_op (0); + for (size_t k = 0; k < i; k++) + TALER_blinded_denom_sig_free (&denoms_sig[k]); return GNUNET_SYSERR; } }