exchange

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

commit f4b013b3d467f93482a00b208acf3a2874362fe7
parent 6fb30ce46809a1c444b66911ea846b8a3f820ce1
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sat, 11 Jun 2016 17:11:38 +0200

fix leaks

Diffstat:
Msrc/exchange-tools/taler-exchange-keyup.c | 2++
Msrc/exchange/taler-exchange-aggregator.c | 5+++++
Msrc/util/util.c | 4++++
3 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/exchange-tools/taler-exchange-keyup.c b/src/exchange-tools/taler-exchange-keyup.c @@ -523,6 +523,7 @@ exchange_keys_update_signkeys () { fprintf (stderr, "Failed to create signing key directory\n"); + GNUNET_free (signkey_dir); return GNUNET_SYSERR; } @@ -530,6 +531,7 @@ exchange_keys_update_signkeys () signkey_duration, GNUNET_TIME_UNIT_ZERO /* no overlap for signing keys */, &anchor); + GNUNET_free (signkey_dir); while (anchor.abs_value_us < lookahead_sign_stamp.abs_value_us) { diff --git a/src/exchange/taler-exchange-aggregator.c b/src/exchange/taler-exchange-aggregator.c @@ -757,6 +757,7 @@ run_aggregation (void *cls) "Preparing wire transfer of %s to %s\n", amount_s, TALER_B2S (&au->merchant_pub)); + GNUNET_free (amount_s); } au->wp = wp; au->ph = wp->wire_plugin->prepare_wire_transfer (wp->wire_plugin->cls, @@ -1095,7 +1096,11 @@ main (int argc, gettext_noop ("background process that aggregates and executes wire transfers to merchants"), options, &run, NULL)) + { + GNUNET_free ((void*) argv); return 1; + } + GNUNET_free ((void*) argv); return global_ret; } diff --git a/src/util/util.c b/src/util/util.c @@ -84,7 +84,11 @@ TALER_config_get_denom (const struct GNUNET_CONFIGURATION_Handle *cfg, return GNUNET_NO; if (GNUNET_OK != TALER_string_to_amount (str, denom)) + { + GNUNET_free (str); return GNUNET_SYSERR; + } + GNUNET_free (str); return GNUNET_OK; }