From afe3f70d336e151598e02ebedb6498e13122530e Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Tue, 14 Feb 2023 14:26:00 +0100 Subject: begin API change to allow AML officers to trigger KYC process --- src/include/taler_crypto_lib.h | 6 ++++++ src/include/taler_exchange_service.h | 2 ++ src/include/taler_exchangedb_plugin.h | 1 + src/include/taler_testing_lib.h | 2 ++ 4 files changed, 11 insertions(+) (limited to 'src/include') diff --git a/src/include/taler_crypto_lib.h b/src/include/taler_crypto_lib.h index 5f6274919..20ffaf0cd 100644 --- a/src/include/taler_crypto_lib.h +++ b/src/include/taler_crypto_lib.h @@ -2406,6 +2406,8 @@ TALER_officer_aml_query_verify ( * @param h_payto payto URI hash of the account the * decision is about * @param new_state updated AML state + * @param kyc_requirements additional KYC requirements to + * impose, can be NULL * @param officer_priv private key of AML officer * @param[out] officer_sig where to write the signature */ @@ -2416,6 +2418,7 @@ TALER_officer_aml_decision_sign ( const struct TALER_Amount *new_threshold, const struct TALER_PaytoHashP *h_payto, enum TALER_AmlDecisionState new_state, + const json_t *kyc_requirements, const struct TALER_AmlOfficerPrivateKeyP *officer_priv, struct TALER_AmlOfficerSignatureP *officer_sig); @@ -2430,6 +2433,8 @@ TALER_officer_aml_decision_sign ( * @param h_payto payto URI hash of the account the * decision is about * @param new_state updated AML state + * @param kyc_requirements additional KYC requirements to + * impose, can be NULL * @param officer_pub public key of AML officer * @param officer_sig signature to verify * @return #GNUNET_OK if the signature is valid @@ -2441,6 +2446,7 @@ TALER_officer_aml_decision_verify ( const struct TALER_Amount *new_threshold, const struct TALER_PaytoHashP *h_payto, enum TALER_AmlDecisionState new_state, + const json_t *kyc_requirements, const struct TALER_AmlOfficerPublicKeyP *officer_pub, const struct TALER_AmlOfficerSignatureP *officer_sig); diff --git a/src/include/taler_exchange_service.h b/src/include/taler_exchange_service.h index 15329ad1c..5cfe6a98e 100644 --- a/src/include/taler_exchange_service.h +++ b/src/include/taler_exchange_service.h @@ -4608,6 +4608,7 @@ typedef void * @param h_payto payto URI hash of the account the * decision is about * @param new_state updated AML state + * @param kyc_requirements JSON array of KYC requirements being imposed, NULL for none * @param officer_priv private key of the deciding AML officer * @param cb function to call with the exchange's result * @param cb_cls closure for @a cb @@ -4622,6 +4623,7 @@ TALER_EXCHANGE_add_aml_decision ( const struct TALER_Amount *new_threshold, const struct TALER_PaytoHashP *h_payto, enum TALER_AmlDecisionState new_state, + const json_t *kyc_requirements, const struct TALER_AmlOfficerPrivateKeyP *officer_priv, TALER_EXCHANGE_AddAmlDecisionCallback cb, void *cb_cls); diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h index 0a389bd6e..f4397e296 100644 --- a/src/include/taler_exchangedb_plugin.h +++ b/src/include/taler_exchangedb_plugin.h @@ -6704,6 +6704,7 @@ struct TALER_EXCHANGEDB_Plugin enum TALER_AmlDecisionState new_status, struct GNUNET_TIME_Timestamp decision_time, const char *justification, + const json_t *kyc_requirements, const struct TALER_AmlOfficerPublicKeyP *decider_pub, const struct TALER_AmlOfficerSignatureP *decider_sig, bool *invalid_officer, diff --git a/src/include/taler_testing_lib.h b/src/include/taler_testing_lib.h index cf4279514..37d347c30 100644 --- a/src/include/taler_testing_lib.h +++ b/src/include/taler_testing_lib.h @@ -2741,6 +2741,7 @@ TALER_TESTING_cmd_set_officer ( * @param new_threshold new threshold to set * @param justification justification given for the decision * @param new_state new AML state for the account + * @param kyc_requirement KYC requirement to impose * @param expected_response expected HTTP return status * @return the command */ @@ -2752,6 +2753,7 @@ TALER_TESTING_cmd_take_aml_decision ( const char *new_threshold, const char *justification, enum TALER_AmlDecisionState new_state, + const char *kyc_requirement, unsigned int expected_response); -- cgit v1.2.3