diff options
Diffstat (limited to 'src/kyclogic/kyclogic_api.c')
-rw-r--r-- | src/kyclogic/kyclogic_api.c | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/kyclogic/kyclogic_api.c b/src/kyclogic/kyclogic_api.c index d29a6ac34..af801a55c 100644 --- a/src/kyclogic/kyclogic_api.c +++ b/src/kyclogic/kyclogic_api.c @@ -885,6 +885,35 @@ find_measure (const struct TALER_KYCLOGIC_LegitimizationRuleSet *lrs, } +const struct TALER_KYCLOGIC_Measure * +TALER_KYCLOGIC_rule_get_instant_measure ( + const struct TALER_KYCLOGIC_KycRule *r) +{ + const struct TALER_KYCLOGIC_LegitimizationRuleSet *lrs + = r->lrs; + + if (r->verboten) + return NULL; + for (unsigned int i = 0; i<r->num_measures; i++) + { + const char *measure_name = r->next_measures[i]; + const struct TALER_KYCLOGIC_Measure *ms; + + ms = find_measure (lrs, + measure_name); + if (NULL == ms) + { + GNUNET_break (0); + return NULL; + } + if (0 == strcasecmp (ms->check_name, + "SKIP")) + return ms; + } + return NULL; +} + + json_t * TALER_KYCLOGIC_rule_to_measures (const struct TALER_KYCLOGIC_KycRule *r) { @@ -3463,6 +3492,26 @@ TALER_KYCLOGIC_run_aml_program2 ( } +struct TALER_KYCLOGIC_AmlProgramRunnerHandle * +TALER_KYCLOGIC_run_aml_program3 ( + const struct TALER_KYCLOGIC_Measure *measure, + const json_t *attributes, + const json_t *aml_history, + const json_t *kyc_history, + TALER_KYCLOGIC_AmlProgramResultCallback aprc, + void *aprc_cls) +{ + return TALER_KYCLOGIC_run_aml_program2 ( + measure->prog_name, + attributes, + aml_history, + kyc_history, + measure->context, + aprc, + aprc_cls); +} + + void TALER_KYCLOGIC_run_aml_program_cancel ( struct TALER_KYCLOGIC_AmlProgramRunnerHandle *aprh) |