diff options
author | Christian Grothoff <christian@grothoff.org> | 2020-06-20 19:49:26 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2020-06-20 19:49:26 +0200 |
commit | 4621e2ea42eed868fa842889a32c7f90b52a863f (patch) | |
tree | 5e7c4558f8354e787f9a6f21c738695702f38026 /src/backend | |
parent | c6a10b52461f7781ac3e9c6aeb467ecbd7bdad38 (diff) | |
download | merchant-4621e2ea42eed868fa842889a32c7f90b52a863f.tar.gz merchant-4621e2ea42eed868fa842889a32c7f90b52a863f.tar.bz2 merchant-4621e2ea42eed868fa842889a32c7f90b52a863f.zip |
add amount checks
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/taler-merchant-httpd_reserves.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/backend/taler-merchant-httpd_reserves.c b/src/backend/taler-merchant-httpd_reserves.c index 1d176324..8231e0d3 100644 --- a/src/backend/taler-merchant-httpd_reserves.c +++ b/src/backend/taler-merchant-httpd_reserves.c @@ -179,6 +179,27 @@ reserve_cb (void *cls, try_later (r); return; } + if (0 != + TALER_amount_cmp_currency (&r->expected_amount, + balance)) + { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, + "Reserve currency disagreement: exchange `%s' has %s, expected %s\n", + r->exchange_url, + balance->currency, + r->expected_amount.currency); + free_reserve (r); + return; + } + if (0 != + TALER_amount_cmp (&r->expected_amount, + balance)) + { + GNUNET_log (GNUNET_ERROR_TYPE_WARNING, + "Reserve initial balance disagreement: exchange `%s' received `%s'\n", + r->exchange_url, + TALER_amount2s (balance)); + } qs = TMH_db->activate_reserve (TMH_db->cls, r->instance_id, &r->reserve_pub, |