exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit 496b9ba6a97ba03f2fa3ca1a8eebae270f008349
parent a76247276d5bc6520ccb849e043c4f52a2b40d8b
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun,  8 Dec 2019 23:04:41 +0100

fix matching

Diffstat:
Msrc/exchange/taler-exchange-httpd_terms.c | 16++++++++++++----
Msrc/lib/test_exchange_api.conf | 2--
2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/src/exchange/taler-exchange-httpd_terms.c b/src/exchange/taler-exchange-httpd_terms.c @@ -45,7 +45,7 @@ struct Terms /** * The desired language. */ - const char *language; + char *language; /** * Number of bytes in @e terms. @@ -215,13 +215,21 @@ TEH_handler_terms (struct TEH_RequestHandler *rh, p->mime_type)) ) { if ( (NULL == t) || + (! mime_matches (mime, + t->mime_type)) || (language_matches (lang, - p->mime_type) > + p->language) > language_matches (lang, - t->mime_type) ) ) + t->language) ) ) t = p; } } + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Best match for %s/%s: %s / %s\n", + lang, + mime, + (NULL != t) ? t->mime_type : "<none>", + (NULL != t) ? t->language : "<none>"); } if (NULL == t) @@ -440,7 +448,7 @@ load_terms (const char *path, struct Terms t = { .mime_type = mime, .terms = buf, - .language = lang, + .language = GNUNET_strdup (lang), .terms_size = bsize }; diff --git a/src/lib/test_exchange_api.conf b/src/lib/test_exchange_api.conf @@ -26,8 +26,6 @@ PORT = 8083 [exchange] -TERMS_ETAG = 0 -TERMS_DIR = /home/grothoff/share/taler-exchange/tos/ # how long is one signkey valid? signkey_duration = 4 weeks