summaryrefslogtreecommitdiff
path: root/src/kyclogic/plugin_kyclogic_kycaid.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2023-11-12 15:13:35 +0100
committerChristian Grothoff <christian@grothoff.org>2023-11-12 15:13:35 +0100
commit2359d8ae29b48f0280b1002a2dd0d1ba28bea0c6 (patch)
tree4ef40efce59c3582eb018078e917878c92da229f /src/kyclogic/plugin_kyclogic_kycaid.c
parent87f3f5230f7bbcb02e5b54d66ad3cd2e51ac3c08 (diff)
downloadexchange-2359d8ae29b48f0280b1002a2dd0d1ba28bea0c6.tar.gz
exchange-2359d8ae29b48f0280b1002a2dd0d1ba28bea0c6.tar.bz2
exchange-2359d8ae29b48f0280b1002a2dd0d1ba28bea0c6.zip
handle conversion helper errors better
Diffstat (limited to 'src/kyclogic/plugin_kyclogic_kycaid.c')
-rw-r--r--src/kyclogic/plugin_kyclogic_kycaid.c29
1 files changed, 25 insertions, 4 deletions
diff --git a/src/kyclogic/plugin_kyclogic_kycaid.c b/src/kyclogic/plugin_kyclogic_kycaid.c
index b1b9f0a49..726ba7ead 100644
--- a/src/kyclogic/plugin_kyclogic_kycaid.c
+++ b/src/kyclogic/plugin_kyclogic_kycaid.c
@@ -361,10 +361,10 @@ kycaid_load_configuration (void *cls,
return NULL;
}
if (GNUNET_OK !=
- GNUNET_CONFIGURATION_get_value_filename (ps->cfg,
- provider_section_name,
- "KYC_KYCAID_CONVERTER_HELPER",
- &pd->conversion_helper))
+ GNUNET_CONFIGURATION_get_value_string (ps->cfg,
+ provider_section_name,
+ "KYC_KYCAID_CONVERTER_HELPER",
+ &pd->conversion_helper))
{
GNUNET_log_config_missing (GNUNET_ERROR_TYPE_ERROR,
provider_section_name,
@@ -968,6 +968,27 @@ handle_webhook_finished (void *cls,
"-a",
wh->pd->auth_token,
NULL);
+ if (NULL == wh->econ)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "Failed to start KYCAID conversion helper `%s'\n",
+ wh->pd->conversion_helper);
+ resp = TALER_MHD_make_error (
+ TALER_EC_EXCHANGE_GENERIC_KYC_CONVERTER_FAILED,
+ NULL);
+ wh->cb (wh->cb_cls,
+ wh->process_row,
+ &wh->h_payto,
+ wh->pd->section,
+ wh->applicant_id,
+ wh->verification_id,
+ TALER_KYCLOGIC_STATUS_INTERNAL_ERROR,
+ GNUNET_TIME_UNIT_ZERO_ABS, /* expiration */
+ NULL,
+ MHD_HTTP_INTERNAL_SERVER_ERROR,
+ resp);
+ break;
+ }
return;
}
break;