summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2022-11-06 22:29:51 +0100
committerChristian Grothoff <christian@grothoff.org>2022-11-06 22:29:51 +0100
commitf8e9241a3d4adb3e31e8691782136aaed88b41da (patch)
tree0c7e34c8b6db55e42294e843e3f9363d4d754b98 /src/include
parent6d59c19f363d0eb7a0ba94646914624df56bd14a (diff)
downloadexchange-f8e9241a3d4adb3e31e8691782136aaed88b41da.tar.gz
exchange-f8e9241a3d4adb3e31e8691782136aaed88b41da.tar.bz2
exchange-f8e9241a3d4adb3e31e8691782136aaed88b41da.zip
fix #7427
Diffstat (limited to 'src/include')
-rw-r--r--src/include/taler_crypto_lib.h10
-rw-r--r--src/include/taler_exchange_service.h5
-rw-r--r--src/include/taler_kyclogic_lib.h3
3 files changed, 16 insertions, 2 deletions
diff --git a/src/include/taler_crypto_lib.h b/src/include/taler_crypto_lib.h
index 6b8000933..7a056376f 100644
--- a/src/include/taler_crypto_lib.h
+++ b/src/include/taler_crypto_lib.h
@@ -3891,10 +3891,12 @@ TALER_exchange_online_key_set_verify (
/**
- * Create account setup success signature.
+ * Create account KYC setup success signature.
*
* @param scb function to call to create the signature
* @param h_payto target of the KYC account
+ * @param kyc JSON data describing which KYC checks
+ * were satisfied
* @param timestamp time when the KYC was confirmed
* @param[out] pub where to write the public key
* @param[out] sig where to write the signature
@@ -3904,15 +3906,18 @@ enum TALER_ErrorCode
TALER_exchange_online_account_setup_success_sign (
TALER_ExchangeSignCallback scb,
const struct TALER_PaytoHashP *h_payto,
+ const json_t *kyc,
struct GNUNET_TIME_Timestamp timestamp,
struct TALER_ExchangePublicKeyP *pub,
struct TALER_ExchangeSignatureP *sig);
/**
- * Verify account setup success signature.
+ * Verify account KYC setup success signature.
*
* @param h_payto target of the KYC account
+ * @param kyc JSON data describing which KYC checks
+ * were satisfied
* @param timestamp time when the KYC was confirmed
* @param pub where to write the public key
* @param sig where to write the signature
@@ -3921,6 +3926,7 @@ TALER_exchange_online_account_setup_success_sign (
enum GNUNET_GenericReturnValue
TALER_exchange_online_account_setup_success_verify (
const struct TALER_PaytoHashP *h_payto,
+ const json_t *kyc,
struct GNUNET_TIME_Timestamp timestamp,
const struct TALER_ExchangePublicKeyP *pub,
const struct TALER_ExchangeSignatureP *sig);
diff --git a/src/include/taler_exchange_service.h b/src/include/taler_exchange_service.h
index e3a349a92..d11f7d616 100644
--- a/src/include/taler_exchange_service.h
+++ b/src/include/taler_exchange_service.h
@@ -3455,6 +3455,11 @@ struct TALER_EXCHANGE_KycStatus
{
/**
+ * Details about which KYC check(s) were passed.
+ */
+ const json_t *kyc_details;
+
+ /**
* Time of the affirmation.
*/
struct GNUNET_TIME_Timestamp timestamp;
diff --git a/src/include/taler_kyclogic_lib.h b/src/include/taler_kyclogic_lib.h
index cfe6a5c7d..c18c677df 100644
--- a/src/include/taler_kyclogic_lib.h
+++ b/src/include/taler_kyclogic_lib.h
@@ -232,6 +232,8 @@ TALER_KYCLOGIC_kyc_test_required (enum TALER_KYCLOGIC_KycTriggerEvent event,
*
* @param requirements space-spearated list of requirements
* @param h_payto hash over the account
+ * @param[out] kyc_expire if satisfied, set to when the KYC
+ * check data expires
* @param ki iterator over satisfied providers
* @param ki_cls closure for @a ki
* @return true if the KYC check was satisfied
@@ -239,6 +241,7 @@ TALER_KYCLOGIC_kyc_test_required (enum TALER_KYCLOGIC_KycTriggerEvent event,
bool
TALER_KYCLOGIC_check_satisfied (const char *requirements,
const struct TALER_PaytoHashP *h_payto,
+ json_t **kyc_details,
TALER_KYCLOGIC_KycSatisfiedIterator ki,
void *ki_cls);