gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-merchant] branch master updated: add cache control to /config


From: gnunet
Subject: [taler-merchant] branch master updated: add cache control to /config
Date: Sun, 07 Apr 2024 19:40:34 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository merchant.

The following commit(s) were added to refs/heads/master by this push:
     new 05268573 add cache control to /config
05268573 is described below

commit 052685737ceb34fdc942eb40ee4abab4824665d3
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun Apr 7 19:40:31 2024 +0200

    add cache control to /config
---
 src/backend/taler-merchant-httpd_config.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/src/backend/taler-merchant-httpd_config.c 
b/src/backend/taler-merchant-httpd_config.c
index c7dec0f9..e8d4b0fa 100644
--- a/src/backend/taler-merchant-httpd_config.c
+++ b/src/backend/taler-merchant-httpd_config.c
@@ -89,9 +89,23 @@ MH_handler_config (struct TMH_RequestHandler *rh,
   {
     json_t *specs = json_object ();
     json_t *exchanges = json_array ();
+    struct GNUNET_TIME_Absolute a;
+    struct GNUNET_TIME_Timestamp km;
+    char dat[128];
 
     GNUNET_assert (NULL != specs);
     GNUNET_assert (NULL != exchanges);
+    a = GNUNET_TIME_relative_to_absolute (GNUNET_TIME_UNIT_DAYS);
+    /* Round up to next full day to ensure the expiration
+       time does not become a fingerprint! */
+    a = GNUNET_TIME_absolute_round_down (a,
+                                         GNUNET_TIME_UNIT_DAYS);
+    a = GNUNET_TIME_absolute_add (a,
+                                  GNUNET_TIME_UNIT_DAYS);
+    /* => /config response stays at most 48h in caches! */
+    km = GNUNET_TIME_absolute_to_timestamp (a);
+    TALER_MHD_get_date_string (km.abs_time,
+                               dat);
     TMH_exchange_get_trusted (&add_exchange,
                               exchanges);
     for (unsigned int i = 0; i<TMH_num_cspecs; i++)
@@ -118,6 +132,14 @@ MH_handler_config (struct TMH_RequestHandler *rh,
                                "taler-merchant"),
       GNUNET_JSON_pack_string ("version",
                                MERCHANT_PROTOCOL_VERSION));
+    GNUNET_break (MHD_YES ==
+                  MHD_add_response_header (response,
+                                           MHD_HTTP_HEADER_EXPIRES,
+                                           dat));
+    GNUNET_break (MHD_YES ==
+                  MHD_add_response_header (response,
+                                           MHD_HTTP_HEADER_CACHE_CONTROL,
+                                           "public,max-age=21600")); /* 6h */
   }
   return MHD_queue_response (connection,
                              MHD_HTTP_OK,

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]