summaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-06-20 19:49:26 +0200
committerChristian Grothoff <christian@grothoff.org>2020-06-20 19:49:26 +0200
commit4621e2ea42eed868fa842889a32c7f90b52a863f (patch)
tree5e7c4558f8354e787f9a6f21c738695702f38026 /src/backend
parentc6a10b52461f7781ac3e9c6aeb467ecbd7bdad38 (diff)
downloadmerchant-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.c21
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,