diff options
author | Christian Grothoff <christian@grothoff.org> | 2022-02-10 23:39:00 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2022-02-10 23:39:00 +0100 |
commit | 532d4ad0dca62055056e5b6093e82daa3541f690 (patch) | |
tree | 65e2d5b783d0a84b33779b8d0e89225d0e765353 /src/include | |
parent | d58d89dcab91823dff208d230e1b1b3a742810bd (diff) |
-fixes to tests, and half-baked fixes for CS-/link (still fails)
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/taler_exchangedb_plugin.h | 18 | ||||
-rw-r--r-- | src/include/taler_pq_lib.h | 27 |
2 files changed, 44 insertions, 1 deletions
diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h index 8269672fe..1cd90c28f 100644 --- a/src/include/taler_exchangedb_plugin.h +++ b/src/include/taler_exchangedb_plugin.h @@ -317,6 +317,7 @@ struct TALER_EXCHANGEDB_TableData uint64_t denominations_serial; void *coin_ev; size_t coin_ev_size; + struct TALER_ExchangeWithdrawValues ewv; // h_coin_ev omitted, to be recomputed! struct TALER_BlindedDenominationSignature ev_sig; } refresh_revealed_coins; @@ -1369,11 +1370,22 @@ struct TALER_EXCHANGEDB_LinkList struct TALER_BlindedDenominationSignature ev_sig; /** + * Exchange-provided values during the coin generation. + */ + struct TALER_ExchangeWithdrawValues alg_values; + + /** * Signature of the original coin being refreshed over the * link data, of type #TALER_SIGNATURE_WALLET_COIN_LINK */ struct TALER_CoinSpendSignatureP orig_coin_link_sig; + /** + * Offset that generated this coin in the refresh + * operation. + */ + uint32_t coin_refresh_offset; + }; @@ -1646,6 +1658,12 @@ struct TALER_EXCHANGEDB_RefreshRevealedCoin struct TALER_BlindedDenominationSignature coin_sig; /** + * Values contributed from the exchange to the + * coin generation (see /csr). + */ + struct TALER_ExchangeWithdrawValues exchange_vals; + + /** * Blinded message to be signed (in envelope). */ struct TALER_BlindedPlanchet blinded_planchet; diff --git a/src/include/taler_pq_lib.h b/src/include/taler_pq_lib.h index fa3128462..81f5c9872 100644 --- a/src/include/taler_pq_lib.h +++ b/src/include/taler_pq_lib.h @@ -1,6 +1,6 @@ /* This file is part of TALER - Copyright (C) 2014, 2015, 2016 Taler Systems SA + Copyright (C) 2014-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 @@ -103,6 +103,18 @@ TALER_PQ_query_param_blinded_denom_sig ( /** + * Generate query parameter for the exchange's contribution during a + * withdraw. Internally, the various attributes of the @a alg_values will be + * serialized into on variable-size BLOB. + * + * @param x pointer to the query parameter to pass + */ +struct GNUNET_PQ_QueryParam +TALER_PQ_query_param_exchange_withdraw_values ( + const struct TALER_ExchangeWithdrawValues *alg_values); + + +/** * Generate query parameter for a JSON object (stored as a string * in the DB). Note that @a x must really be a JSON object or array, * passing just a value (string, integer) is not supported and will @@ -180,6 +192,19 @@ TALER_PQ_result_spec_blinded_denom_sig ( /** + * Exchange withdraw values expected. + * + * @param name name of the field in the table + * @param[out] ewv where to store the exchange values + * @return array entry for the result specification to use + */ +struct GNUNET_PQ_ResultSpec +TALER_PQ_result_spec_exchange_withdraw_values ( + const char *name, + struct TALER_ExchangeWithdrawValues *ewv); + + +/** * Blinded planchet expected. * * @param name name of the field in the table |