diff options
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/taler_exchange_service.h | 18 | ||||
-rw-r--r-- | src/include/taler_json_lib.h | 12 | ||||
-rw-r--r-- | src/include/taler_testing_lib.h | 22 |
3 files changed, 38 insertions, 14 deletions
diff --git a/src/include/taler_exchange_service.h b/src/include/taler_exchange_service.h index e1f632a6f..b4142d6f9 100644 --- a/src/include/taler_exchange_service.h +++ b/src/include/taler_exchange_service.h @@ -1112,6 +1112,17 @@ TALER_EXCHANGE_csr (struct TALER_EXCHANGE_Handle *exchange, void *res_cb_cls); +/** + * + * Cancel a CS R request. This function cannot be used + * on a request handle if a response is already served for it. + * + * @param csrh the withdraw handle + */ +void +TALER_EXCHANGE_csr_cancel (struct TALER_EXCHANGE_CsRHandle *csrh); + + /* ********************* GET /reserves/$RESERVE_PUB *********************** */ @@ -2576,11 +2587,16 @@ struct TALER_EXCHANGE_FutureKeys struct TALER_SecurityModulePublicKeyP signkey_secmod_public_key; /** - * Public key of the denomination security module. + * Public key of the RSA denomination security module. */ struct TALER_SecurityModulePublicKeyP denom_secmod_public_key; /** + * Public key of the CS denomination security module. + */ + struct TALER_SecurityModulePublicKeyP denom_secmod_cs_public_key; + + /** * Offline master public key used by this exchange. */ struct TALER_MasterPublicKeyP master_pub; diff --git a/src/include/taler_json_lib.h b/src/include/taler_json_lib.h index d243dd723..51ebe6d90 100644 --- a/src/include/taler_json_lib.h +++ b/src/include/taler_json_lib.h @@ -300,18 +300,6 @@ TALER_JSON_spec_i18n_str (const char *name, /** - * Generate line in parser specification for a CS R. - * - * @param field name of the field - * @param r_pub where the r_pub has to be written - * @return corresponding field spec - */ -struct GNUNET_JSON_Specification -TALER_JSON_spec_csr (const char *field, - struct GNUNET_CRYPTO_CsRPublic *r_pub); - - -/** * Hash a JSON for binary signing. * * See https://tools.ietf.org/html/draft-rundgren-json-canonicalization-scheme-15 diff --git a/src/include/taler_testing_lib.h b/src/include/taler_testing_lib.h index 20e3145f0..d5746c5c8 100644 --- a/src/include/taler_testing_lib.h +++ b/src/include/taler_testing_lib.h @@ -66,11 +66,13 @@ TALER_TESTING_make_wire_details (const char *payto); * * @param keys array of keys to search * @param amount coin value to look for + * @param cipher denomination cipher * @return NULL if no matching key was found */ const struct TALER_EXCHANGE_DenomPublicKey * TALER_TESTING_find_pk (const struct TALER_EXCHANGE_Keys *keys, - const struct TALER_Amount *amount); + const struct TALER_Amount *amount, + const enum TALER_DenominationCipher cipher); /** @@ -1289,6 +1291,24 @@ TALER_TESTING_cmd_withdraw_amount (const char *label, /** + * Create a withdraw command using a CS denomination, letting the caller specify + * the desired amount as string. + * + * @param label command label. + * @param reserve_reference command providing us with a reserve to withdraw from + * @param amount how much we withdraw. + * @param expected_response_code which HTTP response code + * we expect from the exchange. + * @return the withdraw command to be executed by the interpreter. + */ +struct TALER_TESTING_Command +TALER_TESTING_cmd_withdraw_cs_amount (const char *label, + const char *reserve_reference, + const char *amount, + unsigned int expected_response_code); + + +/** * Create a withdraw command, letting the caller specify * the desired amount as string and also re-using an existing * coin private key in the process (violating the specification, |