summaryrefslogtreecommitdiff
path: root/src/exchange-lib
diff options
context:
space:
mode:
authorMarcello Stanisci <stanisci.m@gmail.com>2018-03-21 14:24:57 +0100
committerMarcello Stanisci <stanisci.m@gmail.com>2018-03-21 17:13:26 +0100
commit7d4d3b3e9de03f6888647ed61c4156d392fcc640 (patch)
tree422f96cd2cabb7ba6ab28fd5ac6a5f1d34e143c9 /src/exchange-lib
parente364aa76e1325db339c3ecfab3a3d7155c4c911f (diff)
downloadexchange-7d4d3b3e9de03f6888647ed61c4156d392fcc640.tar.gz
exchange-7d4d3b3e9de03f6888647ed61c4156d392fcc640.tar.bz2
exchange-7d4d3b3e9de03f6888647ed61c4156d392fcc640.zip
address leaks.
Diffstat (limited to 'src/exchange-lib')
-rw-r--r--src/exchange-lib/testing_api_cmd_withdraw.c10
-rw-r--r--src/exchange-lib/testing_api_helpers.c8
2 files changed, 16 insertions, 2 deletions
diff --git a/src/exchange-lib/testing_api_cmd_withdraw.c b/src/exchange-lib/testing_api_cmd_withdraw.c
index 07dad69eb..3584cbde3 100644
--- a/src/exchange-lib/testing_api_cmd_withdraw.c
+++ b/src/exchange-lib/testing_api_cmd_withdraw.c
@@ -58,6 +58,11 @@ struct WithdrawState
struct TALER_EXCHANGE_Handle *exchange;
/**
+ * Exchange base URL.
+ */
+ char *exchange_url;
+
+ /**
* Interpreter state (during command).
*/
struct TALER_TESTING_Interpreter *is;
@@ -229,6 +234,7 @@ withdraw_cleanup (void *cls,
GNUNET_CRYPTO_rsa_signature_free (ws->sig.rsa_signature);
ws->sig.rsa_signature = NULL;
}
+ GNUNET_free_non_null (ws->exchange_url);
GNUNET_free (ws);
}
@@ -274,6 +280,7 @@ withdraw_traits (void *cls,
TALER_TESTING_interpreter_fail (ws->is);
return GNUNET_SYSERR;
}
+ ws->exchange_url = MAH_path_to_url (ws->exchange, "/");
struct TALER_TESTING_Trait traits[] = {
TALER_TESTING_make_trait_coin_priv (0 /* only one coin */,
@@ -288,8 +295,7 @@ withdraw_traits (void *cls,
reserve_priv),
TALER_TESTING_make_trait_amount_obj (0,
&ws->amount),
- TALER_TESTING_make_trait_url (
- 0, MAH_path_to_url (ws->exchange, "/")),
+ TALER_TESTING_make_trait_url (0, ws->exchange_url),
TALER_TESTING_trait_end ()
};
diff --git a/src/exchange-lib/testing_api_helpers.c b/src/exchange-lib/testing_api_helpers.c
index 688031552..43c2353d6 100644
--- a/src/exchange-lib/testing_api_helpers.c
+++ b/src/exchange-lib/testing_api_helpers.c
@@ -174,6 +174,7 @@ TALER_TESTING_prepare_exchange (const char *config_filename,
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Failed to run `taler-auditor-sign`,"
" is your PATH correct?\n");
+ GNUNET_free (signed_keys_out);
return GNUNET_NO;
}
GNUNET_OS_process_wait (proc);
@@ -192,6 +193,8 @@ TALER_TESTING_prepare_exchange (const char *config_filename,
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Failed to run `taler-exchange-dbinit`,"
" is your PATH correct?\n");
+
+ GNUNET_free (signed_keys_out);
return GNUNET_NO;
}
if (GNUNET_SYSERR ==
@@ -201,6 +204,7 @@ TALER_TESTING_prepare_exchange (const char *config_filename,
{
GNUNET_break (0);
GNUNET_OS_process_destroy (proc);
+ GNUNET_free (signed_keys_out);
return GNUNET_SYSERR;
}
GNUNET_OS_process_destroy (proc);
@@ -209,6 +213,7 @@ TALER_TESTING_prepare_exchange (const char *config_filename,
{
fprintf (stderr,
"Failed to setup database\n");
+ GNUNET_free (signed_keys_out);
return GNUNET_NO;
}
if ( (type != GNUNET_OS_PROCESS_EXITED) ||
@@ -217,8 +222,11 @@ TALER_TESTING_prepare_exchange (const char *config_filename,
fprintf (stderr,
"Unexpected error running"
" `taler-exchange-dbinit'!\n");
+ GNUNET_free (signed_keys_out);
return GNUNET_SYSERR;
}
+
+ GNUNET_free (signed_keys_out);
return GNUNET_OK;
}