summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVivien Kraus <vivien@planete-kraus.eu>2021-10-12 15:51:45 +0200
committerVivien Kraus <vivien@planete-kraus.eu>2021-10-12 18:51:30 +0200
commit8f8fb9740ac9990e152f198e5247e67a8e8ee2f2 (patch)
tree4ce584aa29ab08681ceaf5cf8e3a7062c695403f
parent154b3e39b27dca9af420585bf89c02140238b230 (diff)
resource server: fix content negociation for PUT and POST
-rw-r--r--po/disfluid.pot30
-rw-r--r--po/fr.po30
-rw-r--r--src/scm/webid-oidc/resource-server.scm5
3 files changed, 34 insertions, 31 deletions
diff --git a/po/disfluid.pot b/po/disfluid.pot
index 66d8df3..f2afe57 100644
--- a/po/disfluid.pot
+++ b/po/disfluid.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: disfluid SNAPSHOT\n"
"Report-Msgid-Bugs-To: vivien@planete-kraus.eu\n"
-"POT-Creation-Date: 2021-10-12 18:27+0200\n"
+"POT-Creation-Date: 2021-10-12 18:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -345,7 +345,7 @@ msgid "The application you are trying to authorize behaved unexpectedly."
msgstr ""
#: src/scm/webid-oidc/authorization-page-unsafe.scm:126
-#: src/scm/webid-oidc/resource-server.scm:299
+#: src/scm/webid-oidc/resource-server.scm:302
msgid "reason-phrase|Found"
msgstr ""
@@ -491,7 +491,7 @@ msgstr ""
msgid "#:grant-types should be a list of symbols"
msgstr ""
-#: src/scm/webid-oidc/client.scm:283 src/scm/webid-oidc/resource-server.scm:173
+#: src/scm/webid-oidc/client.scm:283 src/scm/webid-oidc/resource-server.scm:176
msgid "reason-phrase|Not Modified"
msgstr ""
@@ -1027,7 +1027,7 @@ msgid "The port should be a number between 0 and 65535.\n"
msgstr ""
#: src/scm/webid-oidc/hello-world.scm:159
-#: src/scm/webid-oidc/resource-server.scm:320
+#: src/scm/webid-oidc/resource-server.scm:323
msgid "reason-phrase|Unauthorized"
msgstr ""
@@ -1040,7 +1040,7 @@ msgid "<p>This page requires authentication with Solid.</p>"
msgstr ""
#: src/scm/webid-oidc/hello-world.scm:179
-#: src/scm/webid-oidc/resource-server.scm:328
+#: src/scm/webid-oidc/resource-server.scm:331
msgid "reason-phrase|Method Not Allowed"
msgstr ""
@@ -2095,43 +2095,43 @@ msgstr ""
msgid "~a: authentication failure\n"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:158
-#: src/scm/webid-oidc/resource-server.scm:351
+#: src/scm/webid-oidc/resource-server.scm:161
+#: src/scm/webid-oidc/resource-server.scm:354
msgid "reason-phrase|Precondition Failed"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:195
+#: src/scm/webid-oidc/resource-server.scm:198
msgid "The owner is not defined."
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:265
+#: src/scm/webid-oidc/resource-server.scm:268
msgid "reason-phrase|Created"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:288
+#: src/scm/webid-oidc/resource-server.scm:291
#, scheme-format
msgid "~a: ignoring a group that cannot be fetched: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:292
+#: src/scm/webid-oidc/resource-server.scm:295
#, scheme-format
msgid "~a: ignoring a group that cannot be fetched\n"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:316
+#: src/scm/webid-oidc/resource-server.scm:319
#: src/scm/webid-oidc/token-endpoint.scm:104
msgid "reason-phrase|Forbidden"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:337
+#: src/scm/webid-oidc/resource-server.scm:340
msgid "reason-phrase|Conflict"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:344
+#: src/scm/webid-oidc/resource-server.scm:347
msgid "reason-phrase|Unsupported Media Type"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:358
+#: src/scm/webid-oidc/resource-server.scm:361
msgid "reason-phrase|Not Acceptable"
msgstr ""
diff --git a/po/fr.po b/po/fr.po
index 376f13d..5888864 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: webid-oidc 0.0.0\n"
"Report-Msgid-Bugs-To: vivien@planete-kraus.eu\n"
-"POT-Creation-Date: 2021-10-12 18:27+0200\n"
+"POT-Creation-Date: 2021-10-12 18:28+0200\n"
"PO-Revision-Date: 2021-10-11 16:45+0200\n"
"Last-Translator: Vivien Kraus <vivien@planete-kraus.eu>\n"
"Language-Team: French <vivien@planete-kraus.eu>\n"
@@ -377,7 +377,7 @@ msgstr ""
"L’application que vous essayez d’autoriser se comporte de façon inattendue."
#: src/scm/webid-oidc/authorization-page-unsafe.scm:126
-#: src/scm/webid-oidc/resource-server.scm:299
+#: src/scm/webid-oidc/resource-server.scm:302
msgid "reason-phrase|Found"
msgstr "Trouvé"
@@ -533,7 +533,7 @@ msgstr "#:response-types doit être une liste de symboles"
msgid "#:grant-types should be a list of symbols"
msgstr "#:grant-types doit être une liste de symboles"
-#: src/scm/webid-oidc/client.scm:283 src/scm/webid-oidc/resource-server.scm:173
+#: src/scm/webid-oidc/client.scm:283 src/scm/webid-oidc/resource-server.scm:176
msgid "reason-phrase|Not Modified"
msgstr "Non Modifié"
@@ -1130,7 +1130,7 @@ msgid "The port should be a number between 0 and 65535.\n"
msgstr "Le port doit être un nombre entre 0 et 65535.\n"
#: src/scm/webid-oidc/hello-world.scm:159
-#: src/scm/webid-oidc/resource-server.scm:320
+#: src/scm/webid-oidc/resource-server.scm:323
msgid "reason-phrase|Unauthorized"
msgstr "Non Autorisé"
@@ -1143,7 +1143,7 @@ msgid "<p>This page requires authentication with Solid.</p>"
msgstr "<p>Cette page requiert une authentification avec Solid.</p>"
#: src/scm/webid-oidc/hello-world.scm:179
-#: src/scm/webid-oidc/resource-server.scm:328
+#: src/scm/webid-oidc/resource-server.scm:331
msgid "reason-phrase|Method Not Allowed"
msgstr "Méthode Non Autorisée"
@@ -2476,43 +2476,43 @@ msgstr "~a : échec d’authentificationn : ~a\n"
msgid "~a: authentication failure\n"
msgstr "~a : échec d’authentification\n"
-#: src/scm/webid-oidc/resource-server.scm:158
-#: src/scm/webid-oidc/resource-server.scm:351
+#: src/scm/webid-oidc/resource-server.scm:161
+#: src/scm/webid-oidc/resource-server.scm:354
msgid "reason-phrase|Precondition Failed"
msgstr "Échec de Précondition"
-#: src/scm/webid-oidc/resource-server.scm:195
+#: src/scm/webid-oidc/resource-server.scm:198
msgid "The owner is not defined."
msgstr "Le propriétaire n’est pas défini."
-#: src/scm/webid-oidc/resource-server.scm:265
+#: src/scm/webid-oidc/resource-server.scm:268
msgid "reason-phrase|Created"
msgstr "Créé"
-#: src/scm/webid-oidc/resource-server.scm:288
+#: src/scm/webid-oidc/resource-server.scm:291
#, scheme-format
msgid "~a: ignoring a group that cannot be fetched: ~a\n"
msgstr "~a : j’ignore un groupe qui n’a pas pu être téléchargé : ~a\n"
-#: src/scm/webid-oidc/resource-server.scm:292
+#: src/scm/webid-oidc/resource-server.scm:295
#, scheme-format
msgid "~a: ignoring a group that cannot be fetched\n"
msgstr "~a : j’ignore un groupe qui ne peut pas être téléchargé\n"
-#: src/scm/webid-oidc/resource-server.scm:316
+#: src/scm/webid-oidc/resource-server.scm:319
#: src/scm/webid-oidc/token-endpoint.scm:104
msgid "reason-phrase|Forbidden"
msgstr "Interdit"
-#: src/scm/webid-oidc/resource-server.scm:337
+#: src/scm/webid-oidc/resource-server.scm:340
msgid "reason-phrase|Conflict"
msgstr "Conflit"
-#: src/scm/webid-oidc/resource-server.scm:344
+#: src/scm/webid-oidc/resource-server.scm:347
msgid "reason-phrase|Unsupported Media Type"
msgstr "Type de Média Non Supporté"
-#: src/scm/webid-oidc/resource-server.scm:358
+#: src/scm/webid-oidc/resource-server.scm:361
msgid "reason-phrase|Not Acceptable"
msgstr "Inacceptable"
diff --git a/src/scm/webid-oidc/resource-server.scm b/src/scm/webid-oidc/resource-server.scm
index 3f5f92e..3aa40c5 100644
--- a/src/scm/webid-oidc/resource-server.scm
+++ b/src/scm/webid-oidc/resource-server.scm
@@ -136,7 +136,10 @@
(convert '(text/turtle */*)
server-uri
(uri-path (request-uri request))
- (request-content-type request)
+ (match (request-content-type request)
+ ((or (? symbol? content-type)
+ ((? symbol? content-type) _ ...))
+ content-type))
request-body))
(define (serve-get return path if-match if-none-match content-type content etag headers user)