[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [taler-api] branch master updated: fixing #4980
From: |
gnunet |
Subject: |
[GNUnet-SVN] [taler-api] branch master updated: fixing #4980 |
Date: |
Tue, 18 Apr 2017 21:05:39 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository api.
The following commit(s) were added to refs/heads/master by this push:
new 7d22fe9 fixing #4980
7d22fe9 is described below
commit 7d22fe94cd00bbef94b2f2dea4e6bf62ddf57a5f
Author: Christian Grothoff <address@hidden>
AuthorDate: Tue Apr 18 21:05:37 2017 +0200
fixing #4980
---
api/api-common.rst | 1 +
api/api-exchange.rst | 101 ++++++++++++++++++++++-------
api/exts/__pycache__/tsref.cpython-35.pyc | Bin 7457 -> 7467 bytes
docs/exts/__pycache__/tsref.cpython-35.pyc | Bin 7468 -> 7468 bytes
4 files changed, 80 insertions(+), 22 deletions(-)
diff --git a/api/api-common.rst b/api/api-common.rst
index 229d5bb..1e7cbf8 100644
--- a/api/api-common.rst
+++ b/api/api-common.rst
@@ -604,6 +604,7 @@ within the
struct GNUNET_TIME_AbsoluteNBO start_date;
struct GNUNET_TIME_AbsoluteNBO end_date;
struct TALER_AmountNBO wire_fee;
+ struct TALER_AmountNBO closing_fee;
};
.. _TALER_DepositTrackPS:
diff --git a/api/api-exchange.rst b/api/api-exchange.rst
index 794d2e9..29254e1 100644
--- a/api/api-exchange.rst
+++ b/api/api-exchange.rst
@@ -1,6 +1,6 @@
..
This file is part of GNU TALER.
- Copyright (C) 2014, 2015, 2016 GNUnet e.V. and INRIA
+ Copyright (C) 2014-2017 GNUnet e.V. and INRIA
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
@@ -325,6 +325,9 @@ Obtaining wire-transfer information
// Per transfer wire transfer fee.
wire_fee: Amount;
+ // Per transfer closing fee.
+ closing_fee: Amount;
+
// What date (inclusive) does this fee go into effect?
// The different fees must cover the full time period in which
// any of the denomination keys are valid without overlap.
@@ -402,24 +405,37 @@ exchange.
// Either "WITHDRAW", "DEPOSIT", "PAYBACK", or "CLOSING"
type: string;
- // The amount that was withdrawn or deposited.
+ // The amount that was withdrawn or deposited (incl. fee)
+ // or paid back, or the closing amount.
amount: Amount;
+ // Hash of the denomination public key of the coin, if
+ // type is "WITHDRAW".
+ h_denom_pub?: base32;
+
+ // Hash of the blinded coin to be signed, if
+ // type is "WITHDRAW".
+ h_coin_envelope?: base32;
+
+ // Signature of `TALER_WithdrawRequestPS`_ created with the `reserves's
private key <reserve-priv>`_. Only present if type is "WITHDRAW".
+ reserve_sig?: EddsaSignature;
+
+ // The fee that was charged for "WITHDRAW".
+ withdraw_fee?: Amount;
+
+ // The fee that was charged for "CLOSING".
+ closing_fee?: Amount;
+
// Sender account details, only present if type is "DEPOSIT".
sender_account_details?: any;
// Transfer details uniquely identifying the transfer, only present if
type is "DEPOSIT".
transfer_details?: any;
- // `base32`_ encoding of a purpose, not present for "DEPOSIT"
- // If `type` is "WITHDRAW", this is a `TALER_WithdrawRequestPS`_ with
purpose TALER_SIGNATURE_WALLET_RESERVE_WITHDRAW.
- // If `type` is "CLOSING", this is a `struct
TALER_ReserveCloseConfirmationPS` with purpose
TALER_SIGNATURE_EXCHANGE_RESERVE_CLOSED.
- // If `type` is "PAYBACK", this is a `struct
TALER_PaybackConfirmationPS` with purpose
TALER_SIGNATURE_EXCHANGE_CONFIRM_PAYBACK.
- details?: SignaturePurpose; // See #4980
-
- // Signature of `TALER_WithdrawRequestPS`_ created with the `reserves's
private key <reserve-priv>`_. Only present if type is "WITHDRAW".
- signature?: EddsaSignature;
-
+ // Hash of the wire account into which the funds were
+ // returned to, present if type is "CLOSING".
+ h_wire?: base32;
+
// If `type` is "PAYBACK", this is a signature over a `struct
TALER_PaybackConfirmationPS` with purpose
TALER_SIGNATURE_EXCHANGE_CONFIRM_PAYBACK.
// If `type` is "CLOSING", this is a signature over a `struct
TALER_ReserveCloseConfirmationPS` with purpose
TALER_SIGNATURE_EXCHANGE_RESERVE_CLOSED.
// Not present for other values of `type`.
@@ -428,6 +444,9 @@ exchange.
// Public key used to create `exchange_sig`, only present if
`exchange_sig` is present.
exchange_pub?: EddsaPublicKey;
+ // Public key of the coin that was paid back; only present if type is
"PAYBACK".
+ coin_pub?: CoinPublicKey;
+
// Timestamp when the exchange received the /payback. Only present if
`type` is "PAYBACK".
timestamp?: Timestamp;
}
@@ -568,6 +587,7 @@ denomination.
// SHA-512 hash of the merchant's payment details from `wire`. Although
// strictly speaking redundant, this helps detect inconsistencies.
+ // TODO: change to 'h_wire'.
H_wire: HashCode;
// SHA-512 hash of the contact of the merchant with the customer.
Further
@@ -578,6 +598,8 @@ denomination.
coin_pub: CoinPublicKey;
// denomination RSA key with which the coin is signed
+ // TODO: consider changing to h_denom_pub to reduce bandwidth?
+ // (Exchange clearly knows the full denom_pub).
denom_pub: RsaPublicKey;
// exchange's unblinded RSA signature of the coin
@@ -630,7 +652,7 @@ denomination.
// explicitly as the client might otherwise be confused by clock skew as
to
// which signing key was used.
pub: EddsaPublicKey;
- }
+ }
.. _DepositDoubleSpendError:
.. code-block:: tsref
@@ -653,23 +675,58 @@ denomination.
type: string;
// The total amount of the coin's value absorbed (or restored in the
case of a refund) by this transaction.
- // Note that for deposit and melt, this means the amount given includes
+ // Note that for deposit and melt this means the amount given includes
// the transaction fee, while for refunds the amount given excludes
// the transaction fee. The current coin value can thus be computed by
// subtracting deposit and melt amounts and adding refund amounts from
// the coin's denomination value.
amount: Amount;
- // `base32`_ binary encoding of the transaction data as a
- // `TALER_DepositRequestPS`_, `TALER_RefreshMeltCoinAffirmationPS`_,
- // `TALER_RefundRequestPS`_ or `TALER_PaybackConfirmationPS`_.
- details: SignaturePurpose; // See #4980
+ // Deposit fee in case of type "DEPOSIT".
+ deposit_fee: Amount;
+
+ // public key of the merchant, for "DEPOSIT" operations.
+ merchant_pub?: EddsaPublicKey;
+
+ // date when the operation was made.
+ // Only for "DEPOSIT" operations.
+ timestamp?: Timestamp;
+
+ // date until which the merchant can issue a refund to the customer via
the
+ // exchange, possibly zero if refunds are not allowed. Only for
"DEPOSIT" operations.
+ refund_deadline?: Timestamp;
+
+ // Signature by the coin, only present if `type` is "DEPOSIT" or "MELT".
+ coin_sig?: EddsaSignature;
+
+ // Deposit fee in case of type "MELT".
+ melt_fee: Amount;
+
+ // Session hash for the melt operation.
+ session_hash: HashCode;
+
+ // Hash of the bank account from where we received the funds.
+ h_wire: HashCode;
+
+ // Deposit fee in case of type "REFUND".
+ refund_fee: Amount;
+
+ // Hash over the proposal data of the contract that
+ // is being paid (if type is "DEPOSIT") or refunded (if
+ // `type` is "REFUND"); otherwise absent.
+ h_proposal_data?: HashCode;
+
+ // Refund transaction ID. Only present if `type` is
+ // "REFUND"
+ rtransaction_id?: integer;
+
+ // `EdDSA Signature <eddsa-sig>`_ authorizing the REFUND. Made with
+ // the `public key of the merchant <merchant-pub>`_.
+ // Only present if `type` is "REFUND"
+ merchant_sig?: EddsaSignature;
- // `EdDSA Signature <eddsa-sig>`_ of what we got in `details`.
- // Note that in the case of a 'refund', the signature is made with
- // the `public key of the merchant <merchant-pub>`_, and not `that of
the coin <eddsa-coin-pub>`_,
- // Not present if `type` is "PAYBACK"
- signature?: EddsaSignature;
+ // public key of the reserve that will receive the funds, for "PAYBACK"
operations.
+ reserve_pub?: EddsaPublicKey;
// Signature by the exchange, only present if `type` is "PAYBACK".
exchange_sig?: EddsaSignature;
diff --git a/api/exts/__pycache__/tsref.cpython-35.pyc
b/api/exts/__pycache__/tsref.cpython-35.pyc
index f8474d5..0612be1 100644
Binary files a/api/exts/__pycache__/tsref.cpython-35.pyc and
b/api/exts/__pycache__/tsref.cpython-35.pyc differ
diff --git a/docs/exts/__pycache__/tsref.cpython-35.pyc
b/docs/exts/__pycache__/tsref.cpython-35.pyc
index 344ffae..264b0ae 100644
Binary files a/docs/exts/__pycache__/tsref.cpython-35.pyc and
b/docs/exts/__pycache__/tsref.cpython-35.pyc differ
--
To stop receiving notification emails like this one, please contact
address@hidden
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] [taler-api] branch master updated: fixing #4980,
gnunet <=