summaryrefslogtreecommitdiff
path: root/src/scm/webid-oidc/client-manifest.scm
diff options
context:
space:
mode:
Diffstat (limited to 'src/scm/webid-oidc/client-manifest.scm')
-rw-r--r--src/scm/webid-oidc/client-manifest.scm10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/scm/webid-oidc/client-manifest.scm b/src/scm/webid-oidc/client-manifest.scm
index 2a901c2..1d855c1 100644
--- a/src/scm/webid-oidc/client-manifest.scm
+++ b/src/scm/webid-oidc/client-manifest.scm
@@ -274,6 +274,10 @@ approved.</p>"))
(make-exception-with-message final-message)))))
(let ((json-object (stubs:scm->json-string
(->json-data mf))))
- (values (build-response #:headers `((content-type application/ld+json)
- (expires . ,expiration-date)))
- json-object)))
+ (let ((etag (stubs:hash 'SHA-256 json-object)))
+ (values (build-response #:headers `((content-type application/ld+json)
+ (etag . (,etag . #t))
+ ,@(if expiration-date
+ `((expires . ,expiration-date))
+ `((cache-control public must-revalidate)))))
+ json-object))))