summaryrefslogtreecommitdiff
path: root/src/exchange/taler-exchange-httpd_recoup.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/exchange/taler-exchange-httpd_recoup.c')
-rw-r--r--src/exchange/taler-exchange-httpd_recoup.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/exchange/taler-exchange-httpd_recoup.c b/src/exchange/taler-exchange-httpd_recoup.c
index 1abb88531..cb77ba3f8 100644
--- a/src/exchange/taler-exchange-httpd_recoup.c
+++ b/src/exchange/taler-exchange-httpd_recoup.c
@@ -265,12 +265,16 @@ verify_and_execute_recoup (
TALER_EC_EXCHANGE_RECOUP_BLINDING_FAILED,
NULL);
}
- TALER_coin_ev_hash (
- blinded_planchet.details.rsa_blinded_planchet.blinded_msg,
- blinded_planchet.details.rsa_blinded_planchet.
- blinded_msg_size,
- &pc.h_blind);
- GNUNET_free (blinded_planchet.details.rsa_blinded_planchet.blinded_msg);
+ if (GNUNET_OK != TALER_coin_ev_hash (&blinded_planchet,
+ &pc.h_blind))
+ {
+ GNUNET_break (0);
+ return TALER_MHD_reply_with_error (connection,
+ MHD_HTTP_INTERNAL_SERVER_ERROR,
+ TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE,
+ NULL);
+ }
+ TALER_blinded_planchet_free (&blinded_planchet);
}
pc.coin_sig = coin_sig;