diff options
author | Christian Grothoff <christian@grothoff.org> | 2022-02-09 22:05:10 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2022-02-09 22:05:10 +0100 |
commit | ed5ef2b5f7d1fc5e87d47a2023733604f1f04278 (patch) | |
tree | 8e8c49d9b9fc6ffab683601c8b9dec38fb275029 /src | |
parent | 025922950dcf39700625e04be9f6037af67dddf5 (diff) | |
download | exchange-ed5ef2b5f7d1fc5e87d47a2023733604f1f04278.tar.xz |
also pass ewvs during recoup-refresh
Diffstat (limited to 'src')
-rw-r--r-- | src/exchange/taler-exchange-httpd_recoup-refresh.c | 9 | ||||
-rw-r--r-- | src/lib/exchange_api_recoup_refresh.c | 5 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/exchange/taler-exchange-httpd_recoup-refresh.c b/src/exchange/taler-exchange-httpd_recoup-refresh.c index acaea64f7..3e0588940 100644 --- a/src/exchange/taler-exchange-httpd_recoup-refresh.c +++ b/src/exchange/taler-exchange-httpd_recoup-refresh.c @@ -162,6 +162,8 @@ recoup_refresh_transaction (void *cls, * * @param connection the MHD connection to handle * @param coin information about the coin + * @param exchange_vals values contributed by the exchange + * during refresh * @param coin_bks blinding data of the coin (to be checked) * @param coin_sig signature of the coin * @return MHD result code @@ -170,6 +172,7 @@ static MHD_RESULT verify_and_execute_recoup_refresh ( struct MHD_Connection *connection, const struct TALER_CoinPublicInfo *coin, + const struct TALER_ExchangeWithdrawValues *exchange_vals, const union TALER_DenominationBlindingKeyP *coin_bks, const struct TALER_CoinSpendSignatureP *coin_sig) { @@ -249,7 +252,7 @@ verify_and_execute_recoup_refresh ( coin_bks, NULL, /* FIXME-Oec: TALER_AgeHash * */ &coin->coin_pub, - NULL, /* FIXME: Implement CS */ + exchange_vals, &c_hash, &blinded_planchet)) { @@ -356,11 +359,14 @@ TEH_handler_recoup_refresh (struct MHD_Connection *connection, struct TALER_CoinPublicInfo coin; union TALER_DenominationBlindingKeyP coin_bks; struct TALER_CoinSpendSignatureP coin_sig; + struct TALER_ExchangeWithdrawValues exchange_vals; struct GNUNET_JSON_Specification spec[] = { GNUNET_JSON_spec_fixed_auto ("denom_pub_hash", &coin.denom_pub_hash), TALER_JSON_spec_denom_sig ("denom_sig", &coin.denom_sig), + TALER_JSON_spec_exchange_withdraw_values ("ewv", + &exchange_vals), GNUNET_JSON_spec_fixed_auto ("coin_blind_key_secret", &coin_bks), GNUNET_JSON_spec_fixed_auto ("coin_sig", @@ -384,6 +390,7 @@ TEH_handler_recoup_refresh (struct MHD_Connection *connection, res = verify_and_execute_recoup_refresh (connection, &coin, + &exchange_vals, &coin_bks, &coin_sig); GNUNET_JSON_parse_free (spec); diff --git a/src/lib/exchange_api_recoup_refresh.c b/src/lib/exchange_api_recoup_refresh.c index ca6ce2db2..79c66aceb 100644 --- a/src/lib/exchange_api_recoup_refresh.c +++ b/src/lib/exchange_api_recoup_refresh.c @@ -1,6 +1,6 @@ /* This file is part of TALER - Copyright (C) 2017-2021 Taler Systems SA + Copyright (C) 2017-2022 Taler Systems SA TALER is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -323,6 +323,9 @@ TALER_EXCHANGE_recoup_refresh ( &h_denom_pub), TALER_JSON_pack_denom_sig ("denom_sig", denom_sig), + // FIXME: add this to the spec! + TALER_JSON_pack_exchange_withdraw_values ("ewv", + exchange_vals), GNUNET_JSON_pack_data_auto ("coin_sig", &coin_sig), GNUNET_JSON_pack_data_auto ("coin_blind_key_secret", |