donau

Donation authority for GNU Taler (experimental)
Log | Files | Refs | Submodules | README | LICENSE

commit ece72a6c576ad8e502f77c7c103e8d1617b5abf4
parent 87d6312e857b782b5622ff5fc4fec8b38af6c715
Author: Christian Grothoff <grothoff@gnunet.org>
Date:   Tue,  3 Oct 2023 09:00:04 +0200

reiew

Diffstat:
Msrc/include/taler_donau_service.h | 74+++++++++++++++++++++++---------------------------------------------------
1 file changed, 23 insertions(+), 51 deletions(-)

diff --git a/src/include/taler_donau_service.h b/src/include/taler_donau_service.h @@ -80,11 +80,14 @@ struct TALER_DONAU_BDRPublicKey */ struct TALER_BDRHashP h_key; + // +value (Amount)!!? + /** * Year of validity */ int year; -} +}; + /** * @brief Information about keys from the donau. @@ -100,7 +103,7 @@ struct TALER_DONAU_Keys /** * Array of the donau's BDR keys. */ - struct TALER_DONAU_BDRPublicKey *BDR_keys; + struct TALER_DONAU_BDRPublicKey *BDR_keys; // no caps here please! /** * Supported protocol version by the donau. @@ -124,18 +127,18 @@ struct TALER_DONAU_Keys /** * Timestamp indicating the /keys generation. */ - struct GNUNET_TIME_Timestamp list_issue_date; + struct GNUNET_TIME_Timestamp list_issue_date; // needed? /** * When does this keys data expire? */ - struct GNUNET_TIME_Timestamp key_data_expiration; + struct GNUNET_TIME_Timestamp key_data_expiration; // needed? /** * Default number of fractional digits to render * amounts with. */ - uint32_t currency_fraction_digits; + uint32_t currency_fraction_digits; // See new DD51! /** * Length of the @e sign_keys array (number of valid entries). @@ -145,7 +148,7 @@ struct TALER_DONAU_Keys /** * Length of the @e BDR_keys array. */ - unsigned int num_BDR_keys; + unsigned int num_BDR_keys; // no caps here please! /** * Reference counter for this structure. @@ -407,7 +410,7 @@ TALER_DONAU_test_signing_key ( * found */ const struct TALER_DONAU_BDRPublicKey * -TALER_DONAU_get_BDR_key ( +TALER_DONAU_get_BDR_key ( // no bdr in caps! const struct TALER_DONAU_Keys *keys, const struct TALER_BDRPublicKey *pk); @@ -420,7 +423,7 @@ TALER_DONAU_get_BDR_key ( * @deprecated */ struct TALER_DONAU_BDRPublicKey * -TALER_DONAU_copy_BDR_key ( +TALER_DONAU_copy_BDR_key ( // no bdr in caps! const struct TALER_DONAU_BDRPublicKey *key); @@ -432,7 +435,7 @@ TALER_DONAU_copy_BDR_key ( * @deprecated */ void -TALER_DONAU_destroy_BDR_key ( +TALER_DONAU_destroy_BDR_key ( // no bdr in caps! struct TALER_DONAU_BDRPublicKey *key); @@ -463,38 +466,6 @@ TALER_DONAU_get_signing_key_info ( const struct TALER_DonauPublicKeyP *donau_pub); -/* ********************* wire helpers *********************** */ - - -/** - * Parse array of @a accounts of the donau into @a was. - * - * @param master_pub master public key of the donau, NULL to not verify signatures - * @param accounts array of accounts to parse - * @param[out] was where to write the result (already allocated) - * @param was_length length of the @a was array, must match the length of @a accounts - * @return #GNUNET_OK if parsing @a accounts succeeded - */ -enum GNUNET_GenericReturnValue -TALER_DONAU_parse_accounts ( - const struct TALER_MasterPublicKeyP *master_pub, - const json_t *accounts, - unsigned int was_length, - struct TALER_DONAU_WireAccount was[static was_length]); - - -/** - * Free data within @a was, but not @a was itself. - * - * @param was array of wire account data - * @param was_len length of the @a was array - */ -void -TALER_DONAU_free_accounts ( - unsigned int was_len, - struct TALER_DONAU_WireAccount was[static was_len]); - - /* ********************* collect donation receipts/request signature for QR-Code *********************** */ /** @@ -511,36 +482,36 @@ struct TALER_DONAU_BDRDetail /** * Hash of the public key of the coin. */ - struct TALER_BDRHashP h_BDR_pub; + struct TALER_BDRHashP h_BDR_pub; // Eh, what? Coin? Nonce! /** * The BDR itself. */ - struct TALER_BDR bdr; + struct TALER_BDR bdr; // FIXME: what is this!? }; /** * Information needed for a BDR to be signed. */ -struct TALER_DONAU_BDRDetail +struct TALER_DONAU_BDRDetail // Duplicated name! { /** * The amount to be signed. */ - struct TALER_Amount amount; + struct TALER_Amount amount; // why? /** * The coin’s public key. */ - struct TALER_CoinSpendPublicKeyP coin_pub; + struct TALER_CoinSpendPublicKeyP coin_pub; // coin!?? /** * The signature made with purpose #TALER_SIGNATURE_WALLET_COIN_DEPOSIT made * by the donor with the coin’s private key. */ - struct TALER_CoinSpendSignatureP coin_sig; + struct TALER_CoinSpendSignatureP coin_sig; // why? how? /** * Donau’s unblinded signature of the coin. @@ -550,7 +521,7 @@ struct TALER_DONAU_BDRDetail /** * Hash of the public key of the coin. */ - struct TALER_BDRHashP h_BDR_pub; + struct TALER_BDRHashP h_BDR_pub; // of the coin? or of the public key for BDR_sig!!? }; @@ -565,18 +536,19 @@ struct TALER_DONAU_DepositContractDetail * Hash of the contact of the charity with the donor (further details * are never disclosed to the donau) */ - struct TALER_PrivateContractHashP h_contract_terms; + struct TALER_PrivateContractHashP h_contract_terms; // ??? /** * The public key of the charity (used to identify the charity for refund * requests). */ - struct TALER_CharityPublicKeyP charity_pub; + struct TALER_CharityPublicKeyP charity_pub; // Eh, the charity is supposed to be hidden!!! /** * Salt used to hash the @e charity_payto_uri. */ - struct TALER_WireSaltP wire_salt; + struct TALER_WireSaltP wire_salt; // kill + // out of time for review here... /** * Hash over data provided by the wallet to customize the contract.