summaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorChristian Grothoff <grothoff@gnunet.org>2024-02-10 13:41:39 +0100
committerChristian Grothoff <grothoff@gnunet.org>2024-02-10 13:41:39 +0100
commit66bce148dbc4cdc098b710c10e974d066158f08a (patch)
treeadd057afba7381c901da980251dd17503284e09b /src/backend
parenta63ae8bba773b5e2371ee82c23ba1172d9465bfe (diff)
downloadmerchant-66bce148dbc4cdc098b710c10e974d066158f08a.tar.gz
merchant-66bce148dbc4cdc098b710c10e974d066158f08a.tar.bz2
merchant-66bce148dbc4cdc098b710c10e974d066158f08a.zip
fix regression
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/taler-merchant-httpd.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/backend/taler-merchant-httpd.c b/src/backend/taler-merchant-httpd.c
index 829daf55..8220f84d 100644
--- a/src/backend/taler-merchant-httpd.c
+++ b/src/backend/taler-merchant-httpd.c
@@ -1530,7 +1530,7 @@ url_handler (void *cls,
strlen (instance_prefix)))
{
/* url starts with "/instances/" */
- const char *istart = hc->full_url + strlen (instance_prefix);
+ const char *istart = url + strlen (instance_prefix);
const char *slash = strchr (istart, '/');
char *instance_id;
@@ -1544,6 +1544,8 @@ url_handler (void *cls,
{
MHD_RESULT ret;
struct MHD_Response *response;
+ const char *rstart = hc->full_url + strlen (instance_prefix);
+ const char *rslash = strchr (rstart, '/');
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Client used deprecated '/instances/default/' path. Redirecting to modern path\n");
@@ -1556,7 +1558,7 @@ url_handler (void *cls,
if (MHD_NO ==
MHD_add_response_header (response,
MHD_HTTP_HEADER_LOCATION,
- slash))
+ rslash))
{
GNUNET_break (0);
MHD_destroy_response (response);
@@ -1636,7 +1638,11 @@ url_handler (void *cls,
"/private")) )
{
handlers = private_handlers;
- url += strlen (private_prefix) - 1;
+ if (0 == strcmp (url,
+ "/private"))
+ url = "/";
+ else
+ url += strlen (private_prefix) - 1;
}
else
{
@@ -2156,9 +2162,9 @@ run (void *cls,
RFC_8959_PREFIX,
strlen (RFC_8959_PREFIX))) )
{
- fprintf (stderr,
- "Authentication token does not start with `%s' prefix\n",
- RFC_8959_PREFIX);
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "Authentication token does not start with `%s' prefix\n",
+ RFC_8959_PREFIX);
global_ret = EXIT_NOTCONFIGURED;
GNUNET_SCHEDULER_shutdown ();
return;