From 2cb59820a8715a0fc7d57e9f321d0917aeb0ec03 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 4 Mar 2021 16:02:07 +0100 Subject: fix #6785 --- ...ler-merchant-httpd_private-patch-instances-ID.c | 45 +++++++++++++++++++--- 1 file changed, 39 insertions(+), 6 deletions(-) (limited to 'src/backend/taler-merchant-httpd_private-patch-instances-ID.c') diff --git a/src/backend/taler-merchant-httpd_private-patch-instances-ID.c b/src/backend/taler-merchant-httpd_private-patch-instances-ID.c index edda6228..8f21c76d 100644 --- a/src/backend/taler-merchant-httpd_private-patch-instances-ID.c +++ b/src/backend/taler-merchant-httpd_private-patch-instances-ID.c @@ -50,17 +50,16 @@ free_wm (struct TMH_WireMethod *wm) /** * PATCH configuration of an existing instance, given its configuration. * - * @param rh context of the handler + * @param mi instance to patch * @param connection the MHD connection to handle * @param[in,out] hc context with further information about the request * @return MHD result code */ -MHD_RESULT -TMH_private_patch_instances_ID (const struct TMH_RequestHandler *rh, - struct MHD_Connection *connection, - struct TMH_HandlerContext *hc) +static MHD_RESULT +patch_instances_ID (struct TMH_MerchantInstance *mi, + struct MHD_Connection *connection, + struct TMH_HandlerContext *hc) { - struct TMH_MerchantInstance *mi = hc->instance; struct TALER_MERCHANTDB_InstanceSettings is; json_t *payto_uris; const char *name; @@ -421,4 +420,38 @@ giveup: } +MHD_RESULT +TMH_private_patch_instances_ID (const struct TMH_RequestHandler *rh, + struct MHD_Connection *connection, + struct TMH_HandlerContext *hc) +{ + struct TMH_MerchantInstance *mi = hc->instance; + + return patch_instances_ID (mi, + connection, + hc); +} + + +MHD_RESULT +TMH_private_patch_instances_default_ID (const struct TMH_RequestHandler *rh, + struct MHD_Connection *connection, + struct TMH_HandlerContext *hc) +{ + struct TMH_MerchantInstance *mi; + + mi = TMH_lookup_instance (hc->infix); + if (NULL == mi) + { + return TALER_MHD_reply_with_error (connection, + MHD_HTTP_NOT_FOUND, + TALER_EC_MERCHANT_GENERIC_INSTANCE_UNKNOWN, + hc->infix); + } + return patch_instances_ID (mi, + connection, + hc); +} + + /* end of taler-merchant-httpd_private-patch-instances-ID.c */ -- cgit v1.2.3