From 6040c9ff0f52b6db2bf550ecc1abeed49dd0626c Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Wed, 30 Mar 2022 01:36:52 +0200 Subject: make struct private again --- src/util/exchange_signatures.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'src/util/exchange_signatures.c') diff --git a/src/util/exchange_signatures.c b/src/util/exchange_signatures.c index 2e180b5e9..4890ca206 100644 --- a/src/util/exchange_signatures.c +++ b/src/util/exchange_signatures.c @@ -172,6 +172,48 @@ TALER_exchange_online_deposit_confirmation_verify ( } +/** + * @brief Format used to generate the signature on a request to refund + * a coin into the account of the customer. + */ +struct TALER_RefundConfirmationPS +{ + /** + * Purpose must be #TALER_SIGNATURE_EXCHANGE_CONFIRM_REFUND. + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Hash over the proposal data to identify the contract + * which is being refunded. + */ + struct TALER_PrivateContractHashP h_contract_terms GNUNET_PACKED; + + /** + * The coin's public key. This is the value that must have been + * signed (blindly) by the Exchange. + */ + struct TALER_CoinSpendPublicKeyP coin_pub; + + /** + * The Merchant's public key. Allows the merchant to later refund + * the transaction or to inquire about the wire transfer identifier. + */ + struct TALER_MerchantPublicKeyP merchant; + + /** + * Merchant-generated transaction ID for the refund. + */ + uint64_t rtransaction_id GNUNET_PACKED; + + /** + * Amount to be refunded, including refund fee charged by the + * exchange to the customer. + */ + struct TALER_AmountNBO refund_amount; +}; + + enum TALER_ErrorCode TALER_exchange_online_refund_confirmation_sign ( TALER_ExchangeSignCallback scb, -- cgit v1.2.3