commit ae04bbd57f689fdaf4c2a67fdbfa07bf9c7326da
parent f2bcc3eb672e5ab8a0f838bb34f5fe3a8565f58e
Author: Christian Grothoff <grothoff@gnunet.org>
Date: Wed, 8 Apr 2026 17:37:46 +0200
make instance name, and only instance name, case-insensitive
Diffstat:
3 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/src/backend/taler-merchant-httpd.c b/src/backend/taler-merchant-httpd.c
@@ -338,16 +338,20 @@ struct TMH_MerchantInstance *
TMH_lookup_instance (const char *instance_id)
{
struct GNUNET_HashCode h_instance;
+ char *id;
if (NULL == instance_id)
- instance_id = "admin";
- GNUNET_CRYPTO_hash (instance_id,
- strlen (instance_id),
+ id = GNUNET_strdup ("admin");
+ else
+ id = GNUNET_STRINGS_utf8_tolower (instance_id);
+ GNUNET_CRYPTO_hash (id,
+ strlen (id),
&h_instance);
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Looking for by-id key %s of '%s' in hashmap\n",
GNUNET_h2s (&h_instance),
- instance_id);
+ id);
+ GNUNET_free (id);
/* We're fine if that returns NULL, the calling routine knows how
to handle that */
return GNUNET_CONTAINER_multihashmap_get (TMH_by_id_map,
@@ -836,7 +840,7 @@ add_instance_cb (void *cls,
mi = GNUNET_new (struct TMH_MerchantInstance);
mi->settings = *is;
mi->auth = *ias;
- mi->settings.id = GNUNET_strdup (mi->settings.id);
+ mi->settings.id = GNUNET_STRINGS_utf8_tolower (mi->settings.id);
mi->settings.name = GNUNET_strdup (mi->settings.name);
if (NULL != mi->settings.email)
mi->settings.email = GNUNET_strdup (mi->settings.email);
diff --git a/src/backend/taler-merchant-httpd_post-management-instances.c b/src/backend/taler-merchant-httpd_post-management-instances.c
@@ -462,7 +462,7 @@ post_instances (const struct TMH_RequestHandler *rh,
mi->settings = is;
mi->settings.address = json_incref (mi->settings.address);
mi->settings.jurisdiction = json_incref (mi->settings.jurisdiction);
- mi->settings.id = GNUNET_strdup (is.id);
+ mi->settings.id = GNUNET_STRINGS_utf8_tolower (is.id);
mi->settings.name = GNUNET_strdup (is.name);
if (NULL != is.email)
mi->settings.email = GNUNET_strdup (is.email);
diff --git a/src/testing/test_merchant_kyc.sh b/src/testing/test_merchant_kyc.sh
@@ -191,7 +191,7 @@ STATUS=$(curl -H "Accept: text/plain" \
if [ "$STATUS" != "200" ]
then
- exit_fail "Expected 200. got: $STATUS"
+ exit_fail "Expected 200 for text/plain. got: $STATUS"
fi
# cat "$LAST_RESPONSE"