summaryrefslogtreecommitdiff
path: root/src/scm/webid-oidc/authorization-endpoint.scm
diff options
context:
space:
mode:
authorVivien Kraus <vivien@planete-kraus.eu>2021-08-09 08:55:41 +0200
committerVivien Kraus <vivien@planete-kraus.eu>2021-08-13 01:06:38 +0200
commit7b62790238902e10edb83c07286cf0643b097997 (patch)
tree093dabd1ba89ca09ba7b71fb699c6dd72c64727a /src/scm/webid-oidc/authorization-endpoint.scm
parentdb55d55e5c36c940986f437d26da1ff3c601c3b4 (diff)
Authorization endpoint: the client-id should be an URI.
Diffstat (limited to 'src/scm/webid-oidc/authorization-endpoint.scm')
-rw-r--r--src/scm/webid-oidc/authorization-endpoint.scm12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/scm/webid-oidc/authorization-endpoint.scm b/src/scm/webid-oidc/authorization-endpoint.scm
index d5591b7..4786a7a 100644
--- a/src/scm/webid-oidc/authorization-endpoint.scm
+++ b/src/scm/webid-oidc/authorization-endpoint.scm
@@ -71,9 +71,11 @@
(password (assoc-ref form-args "password"))
(state (assoc-ref get-args "state")))
(when client-id
- (set! client-id (car client-id)))
+ (set! client-id
+ (string->uri (car client-id))))
(when redirect-uri
- (set! redirect-uri (string->uri (car redirect-uri))))
+ (set! redirect-uri
+ (string->uri (car redirect-uri))))
(when password
(set! password (car password)))
(when state
@@ -96,7 +98,7 @@
(exp-sec (+ current-sec validity))
(exp (time-utc->date (make-time time-utc 0 exp-sec)))
(code (issue-authorization-code alg jwk exp subject client-id)))
- (let ((mf (get-client-manifest (string->uri client-id)
+ (let ((mf (get-client-manifest client-id
#:http-get http-get)))
(client-manifest-check-redirect-uri mf redirect-uri)
(let ((query
@@ -113,9 +115,7 @@
#:port (uri-port redirect-uri)
#:path (uri-path redirect-uri)
#:query query)))
- (redirection locale
- (string->uri client-id)
- uri))))))
+ (redirection locale client-id uri))))))
#:unwind? #t))
(else
(authorization-page locale