diff options
author | Christian Grothoff <christian@grothoff.org> | 2019-07-22 13:28:48 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2019-07-22 13:28:48 +0200 |
commit | a83aa1f70ec66b468c3498251ea55f3ab89f6b0e (patch) | |
tree | 0356f217d55c5b9457f797e144d6c8000677e6b7 /src/include | |
parent | c0c80d4a6709fbf1a92417a66635b2b5b5703da7 (diff) | |
download | exchange-a83aa1f70ec66b468c3498251ea55f3ab89f6b0e.tar.xz |
include new payback-refresh possibilities in coin history generation
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/taler_signatures.h | 45 |
1 files changed, 44 insertions, 1 deletions
diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index b738e3156..aedf93e36 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -129,6 +129,11 @@ */ #define TALER_SIGNATURE_EXCHANGE_RESERVE_CLOSED 1040 +/** + * Signature where the Exchange confirms a payback-refresh operation. + */ +#define TALER_SIGNATURE_EXCHANGE_CONFIRM_PAYBACK_REFRESH 1041 + /**********************/ /* Auditor signatures */ @@ -1229,7 +1234,7 @@ struct TALER_PaybackRequestPS /** * Response by which the exchange affirms that it will * refund a coin as part of the emergency /payback - * protocol. The refund will go back to the bank + * protocol. The payback will go back to the bank * account that created the reserve. */ struct TALER_PaybackConfirmationPS @@ -1266,6 +1271,44 @@ struct TALER_PaybackConfirmationPS /** + * Response by which the exchange affirms that it will refund a refreshed coin + * as part of the emergency /payback protocol. The payback will go back to the + * old coin's balance. + */ +struct TALER_PaybackRefreshConfirmationPS +{ + + /** + * Purpose is #TALER_SIGNATURE_EXCHANGE_CONFIRM_PAYBACK_REFRESH + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * When did the exchange receive the payback request? + * Indirectly determines when the wire transfer is (likely) + * to happen. + */ + struct GNUNET_TIME_AbsoluteNBO timestamp; + + /** + * How much of the coin's value will the exchange transfer? + * (Needed in case the coin was partially spent.) + */ + struct TALER_AmountNBO payback_amount; + + /** + * Public key of the refreshed coin. + */ + struct TALER_CoinSpendPublicKeyP coin_pub; + + /** + * Public key of the old coin that will receive the payback. + */ + struct TALER_CoinSpendPublicKeyP old_coin_pub; +}; + + +/** * Response by which the exchange affirms that it has * closed a reserve and send back the funds. */ |