This is the clath Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 04:40:42 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
clath
Clath is single sign-on middleware for Clack. It allows basic login with OAuth1.0a, OAuth2 and OpenID Connect.
Ben McGunigle <bnmcgn@gmail.com>
Apache License, version 2.0
ningle
(system).
clack
(system).
alexandria
(system).
cl-hash-util
(system).
drakma
(system).
flexi-streams
(system).
cl-json
(system).
jose
(system).
ironclad
(system).
cl-who
(system).
ubiquitous
(system).
north
(system).
package.lisp
(file).
util.lisp
(file).
providers.lisp
(file).
bottom.lisp
(file).
clath.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
clath/clath.asd
clath/package.lisp
clath/util.lisp
clath/providers.lisp
clath/bottom.lisp
clath/clath.lisp
clath/util.lisp
package.lisp
(file).
clath
(system).
assoc-cdr
(macro).
assoc-or
(function).
extract-keywords
(function).
mkstr
(function).
repath-clack-env
(function).
string-equal-case
(function).
under-path-p
(function).
url-from-env
(function).
clath/providers.lisp
util.lisp
(file).
clath
(system).
*provider-info*
(special variable).
*provider-secrets*
(special variable).
check-for-error
(function).
request-user-info
(generic function).
request-user-info-north
(function).
clath/bottom.lisp
providers.lisp
(file).
clath
(system).
*callback-extension*
(special variable).
*login-destination*
(special variable).
*login-destination-hook*
(special variable).
*login-extension*
(special variable).
available-providers
(function).
provider-url-string
(function).
*callback-extension-north*
(special variable).
*clath-version*
(special variable).
*login-extension-north*
(special variable).
*server-url*
(special variable).
basic-authorization
(function).
callback-action
(function).
callback-action-north
(function).
destination-on-login
(function).
discover-endpoints
(function).
ensure-jwk
(function).
fetch-jwks
(function).
gen-state
(function).
get-access-token
(function).
get-id-token
(function).
get-jwk
(function).
get-jwk-key
(function).
login-action
(function).
login-action-north
(function).
logout-action
(function).
make-callback-url
(function).
make-login-url
(function).
provider-info
(function).
provider-secrets
(function).
provider-string
(function).
request-access-token
(function).
request-user-auth-destination
(function).
special-url-p
(function).
try-request-user-info
(function).
unpack-and-check-jwt
(function).
update-jwks
(function).
user-agent
(function).
userinfo-get-user-id
(function).
uses-north-p
(function).
valid-state
(function).
clath/clath.lisp
bottom.lisp
(file).
clath
(system).
*in-logout-page*
(special variable).
clath-login-page
(function).
clath-logout-page
(function).
clath-not-logged-page
(function).
clath-page-wrapper
(function).
component
(function).
disable-provider
(function).
enable-provider
(function).
initialize-secrets
(function).
login-links
(function).
login-url
(function).
logout-url
(function).
provider-disabled?
(function).
*logout-extension*
(special variable).
*openid-app-address*
(special variable).
logged-in
(function).
logged-out
(function).
login-app
(function).
login-page
(function).
logout-page
(function).
not-logged-page
(function).
secrets-from-ubiquitous
(function).
Packages are listed by definition order.
clath
alexandria
.
cl-who
.
common-lisp
.
*callback-extension*
(special variable).
*in-logout-page*
(special variable).
*login-destination*
(special variable).
*login-destination-hook*
(special variable).
*login-extension*
(special variable).
available-providers
(function).
clath-login-page
(function).
clath-logout-page
(function).
clath-not-logged-page
(function).
clath-page-wrapper
(function).
component
(function).
disable-provider
(function).
enable-provider
(function).
initialize-secrets
(function).
login-links
(function).
login-url
(function).
logout-url
(function).
provider-disabled?
(function).
provider-url-string
(function).
*callback-extension-north*
(special variable).
*clath-version*
(special variable).
*login-extension-north*
(special variable).
*logout-extension*
(special variable).
*openid-app-address*
(special variable).
*provider-info*
(special variable).
*provider-secrets*
(special variable).
*server-url*
(special variable).
assoc-cdr
(macro).
assoc-or
(function).
basic-authorization
(function).
callback-action
(function).
callback-action-north
(function).
check-for-error
(function).
destination-on-login
(function).
discover-endpoints
(function).
ensure-jwk
(function).
extract-keywords
(function).
fetch-jwks
(function).
gen-state
(function).
get-access-token
(function).
get-id-token
(function).
get-jwk
(function).
get-jwk-key
(function).
logged-in
(function).
logged-out
(function).
login-action
(function).
login-action-north
(function).
login-app
(function).
login-page
(function).
logout-action
(function).
logout-page
(function).
make-callback-url
(function).
make-login-url
(function).
mkstr
(function).
not-logged-page
(function).
provider-info
(function).
provider-secrets
(function).
provider-string
(function).
repath-clack-env
(function).
request-access-token
(function).
request-user-auth-destination
(function).
request-user-info
(generic function).
request-user-info-north
(function).
secrets-from-ubiquitous
(function).
special-url-p
(function).
string-equal-case
(function).
try-request-user-info
(function).
under-path-p
(function).
unpack-and-check-jwt
(function).
update-jwks
(function).
url-from-env
(function).
user-agent
(function).
userinfo-get-user-id
(function).
uses-north-p
(function).
valid-state
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
For code that implements login links. Self destination links should not be used on the logout page, lest the user get stuck in an auto-logout loop. This variable will be set when the logout page is being generated.
Redefine this function to customize the login page.
Redefine this function to customize the logout page.
Redefine this function to customize the not-logged-in page.
Redefine this function to customize the look of all Clath pages.
Finds the first key in keys that has a match in alist. Will use equal to match strings.
Internal portion of clath-login-page
Internal portion of clath-not-logged-page
Sometimes a newly generated access token won’t instantly propagate in the provider’s system, so we try a few times to give it a chance.
Extract the current request url from a clack environment.
Some providers, such as Reddit, want a fairly unique user-agent.
(eql :stackexchange)
) access-token) ¶(eql :linkedin)
) access-token) ¶(eql :github)
) access-token) ¶(eql :reddit)
) access-token) ¶(eql :google)
) access-token) ¶Jump to: | A B C D E F G I L M N P R S T U V |
---|
Jump to: | A B C D E F G I L M N P R S T U V |
---|
Jump to: | *
S |
---|
Jump to: | *
S |
---|
Jump to: | B C F P S U |
---|
Jump to: | B C F P S U |
---|