summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVivien Kraus <vivien@planete-kraus.eu>2021-07-01 16:41:20 +0200
committerVivien Kraus <vivien@planete-kraus.eu>2021-07-02 14:49:13 +0200
commitd05a8836f29d41ec4a423d4f44dcbb93a8bdd759 (patch)
treeb41b0f76b9ee4b9a9e7a415fcde3b967b89db7a2
parente0e3bbbe6d78fc7a7f54325471af5d0e5c498471 (diff)
Switch to AGPL
-rw-r--r--.guix-channel6
-rw-r--r--COPYING147
-rw-r--r--Makefile.am16
-rwxr-xr-xbootstrap16
-rwxr-xr-xci7
-rw-r--r--ci.scm16
-rw-r--r--configure.ac16
-rw-r--r--doc/Makefile.am16
-rw-r--r--doc/style.css17
-rwxr-xr-xget-version16
-rw-r--r--guix/vkraus/packages/webid-oidc.scm49
-rw-r--r--guix/vkraus/services/webid-oidc.scm46
-rw-r--r--guix/vkraus/systems/webid-oidc.scm80
-rwxr-xr-xhooks/update56
-rw-r--r--man/Makefile.am16
-rwxr-xr-xman/reset-env.in16
-rw-r--r--po/POTFILES.in16
-rw-r--r--po/fr.po636
-rw-r--r--po/webid-oidc.pot573
-rwxr-xr-xpre-inst-env.in16
-rw-r--r--src/Makefile.am16
-rw-r--r--src/base64/Makefile.am16
-rw-r--r--src/base64/libwebidoidc-base64.c18
-rw-r--r--src/hash/Makefile.am16
-rw-r--r--src/hash/libwebidoidc-hash.c18
-rw-r--r--src/inst/Makefile.am16
-rw-r--r--src/inst/webid-oidc/Makefile.am16
-rw-r--r--src/jwk/Makefile.am16
-rw-r--r--src/jwk/generate-key.c18
-rw-r--r--src/jwk/libwebidoidc-jwk.c18
-rw-r--r--src/jws/Makefile.am16
-rw-r--r--src/jws/libwebidoidc-jws.c18
-rw-r--r--src/libwebidoidc.c18
-rw-r--r--src/pre-inst/Makefile.am16
-rw-r--r--src/pre-inst/webid-oidc/Makefile.am16
-rw-r--r--src/random/Makefile.am16
-rw-r--r--src/random/generate-random.c18
-rw-r--r--src/random/libwebidoidc-random.c18
-rw-r--r--src/random/random.c18
-rw-r--r--src/random/webid-oidc/random.h18
-rw-r--r--src/scm/Makefile.am17
-rw-r--r--src/scm/webid-oidc.scm3
-rw-r--r--src/scm/webid-oidc/Makefile.am16
-rw-r--r--src/scm/webid-oidc/access-token.scm16
-rw-r--r--src/scm/webid-oidc/authorization-code.scm16
-rw-r--r--src/scm/webid-oidc/authorization-endpoint.scm16
-rw-r--r--src/scm/webid-oidc/authorization-page-unsafe.scm16
-rw-r--r--src/scm/webid-oidc/authorization-page.scm16
-rw-r--r--src/scm/webid-oidc/cache.scm16
-rw-r--r--src/scm/webid-oidc/client-manifest.scm16
-rw-r--r--src/scm/webid-oidc/client.scm16
-rw-r--r--src/scm/webid-oidc/dpop-proof.scm16
-rw-r--r--src/scm/webid-oidc/errors.scm19
-rw-r--r--src/scm/webid-oidc/example-app.scm16
-rw-r--r--src/scm/webid-oidc/fetch.scm16
-rw-r--r--src/scm/webid-oidc/hello-world.scm49
-rw-r--r--src/scm/webid-oidc/http-link.scm16
-rw-r--r--src/scm/webid-oidc/identity-provider.scm16
-rw-r--r--src/scm/webid-oidc/jti.scm16
-rw-r--r--src/scm/webid-oidc/jwk.scm16
-rw-r--r--src/scm/webid-oidc/jws.scm16
-rw-r--r--src/scm/webid-oidc/oidc-configuration.scm16
-rw-r--r--src/scm/webid-oidc/oidc-id-token.scm16
-rw-r--r--src/scm/webid-oidc/program.scm140
-rw-r--r--src/scm/webid-oidc/provider-confirmation.scm16
-rw-r--r--src/scm/webid-oidc/rdf-index.scm16
-rw-r--r--src/scm/webid-oidc/refresh-token.scm16
-rw-r--r--src/scm/webid-oidc/resource-server.scm16
-rw-r--r--src/scm/webid-oidc/reverse-proxy.scm16
-rw-r--r--src/scm/webid-oidc/server/Makefile.am16
-rw-r--r--src/scm/webid-oidc/server/create.scm16
-rw-r--r--src/scm/webid-oidc/server/delete.scm16
-rw-r--r--src/scm/webid-oidc/server/precondition.scm16
-rw-r--r--src/scm/webid-oidc/server/read.scm16
-rw-r--r--src/scm/webid-oidc/server/resource/Makefile.am16
-rw-r--r--src/scm/webid-oidc/server/resource/content.scm16
-rw-r--r--src/scm/webid-oidc/server/resource/path.scm16
-rw-r--r--src/scm/webid-oidc/server/resource/wac.scm16
-rw-r--r--src/scm/webid-oidc/server/update.scm16
-rw-r--r--src/scm/webid-oidc/stubs.scm16
-rw-r--r--src/scm/webid-oidc/testing.scm16
-rw-r--r--src/scm/webid-oidc/token-endpoint.scm16
-rw-r--r--src/utilities.h18
-rwxr-xr-xsrc/webid-oidc16
-rwxr-xr-xsrc/webid-oidc-client-service16
-rwxr-xr-xsrc/webid-oidc-example-app16
-rwxr-xr-x[-rw-r--r--]src/webid-oidc-hello16
-rwxr-xr-xsrc/webid-oidc-issuer16
-rw-r--r--tests/Makefile.am16
-rw-r--r--tests/acl-with-group.scm16
-rw-r--r--tests/acl.scm16
-rw-r--r--tests/authorization-endpoint-get-form.scm16
-rw-r--r--tests/authorization-endpoint-no-args.scm16
-rw-r--r--tests/authorization-endpoint-submit-form.scm16
-rw-r--r--tests/base64-error.scm16
-rw-r--r--tests/base64-ok.scm16
-rw-r--r--tests/cache-revalidate.scm16
-rw-r--r--tests/cache-valid.scm16
-rw-r--r--tests/client-authorization.scm16
-rw-r--r--tests/client-manifest-fraudulent.scm16
-rw-r--r--tests/client-manifest-not-modified.scm16
-rw-r--r--tests/client-manifest-public.scm16
-rw-r--r--tests/client-manifest.scm16
-rw-r--r--tests/client-token.scm16
-rw-r--r--tests/crud.scm16
-rw-r--r--tests/dpop-proof-iat-in-future.scm16
-rw-r--r--tests/dpop-proof-iat-too-late.scm16
-rw-r--r--tests/dpop-proof-replay.scm16
-rw-r--r--tests/dpop-proof-valid.scm16
-rw-r--r--tests/dpop-proof-wrong-htm.scm16
-rw-r--r--tests/dpop-proof-wrong-htu.scm16
-rw-r--r--tests/dpop-proof-wrong-key.scm16
-rw-r--r--tests/hash-ok.scm16
-rw-r--r--tests/hash-unsupported.scm16
-rw-r--r--tests/http-link.scm16
-rw-r--r--tests/jkt.scm16
-rw-r--r--tests/jwk-kty-ec-correct.scm16
-rw-r--r--tests/jwk-kty-ec-incorrect.scm16
-rw-r--r--tests/jwk-kty-rsa-correct.scm16
-rw-r--r--tests/jwk-kty-rsa-incorrect.scm16
-rw-r--r--tests/jwk-public.scm16
-rw-r--r--tests/jwks-get.scm16
-rw-r--r--tests/jws.scm16
-rw-r--r--tests/load-library.scm18
-rw-r--r--tests/oidc-configuration.scm16
-rw-r--r--tests/preconditions.scm16
-rw-r--r--tests/provider-confirmation.scm16
-rw-r--r--tests/random.scm16
-rw-r--r--tests/refresh-token-with-wrong-key.scm16
-rw-r--r--tests/refresh-token.scm16
-rw-r--r--tests/resource-server.scm16
-rw-r--r--tests/server-content.scm16
-rw-r--r--tests/server-path.scm16
-rw-r--r--tests/token-endpoint-issue.scm16
-rw-r--r--tests/token-endpoint-refresh.scm16
-rw-r--r--tests/too-many-refresh-tokens.scm16
-rw-r--r--tests/unknown-client-locale.scm16
-rw-r--r--tests/verification-failed.scm16
-rw-r--r--tests/verify.scm16
-rw-r--r--update-channel.scm16
140 files changed, 3064 insertions, 805 deletions
diff --git a/.guix-channel b/.guix-channel
deleted file mode 100644
index 8e7197b..0000000
--- a/.guix-channel
+++ /dev/null
@@ -1,6 +0,0 @@
-(channel
- (version 0)
- (directory "guix"))
-;; Local Variables:
-;; mode: scheme
-;; End:
diff --git a/COPYING b/COPYING
index f288702..be3f7b2 100644
--- a/COPYING
+++ b/COPYING
@@ -1,5 +1,5 @@
- GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
+ GNU AFFERO GENERAL PUBLIC LICENSE
+ Version 3, 19 November 2007
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
@@ -7,17 +7,15 @@
Preamble
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
+ The GNU Affero General Public License is a free, copyleft license for
+software and other kinds of works, specifically designed to ensure
+cooperation with the community in the case of network server software.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
+our General Public Licenses are intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
+software for all its users.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
@@ -26,44 +24,34 @@ them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
+ Developers that use our General Public Licenses protect your rights
+with two steps: (1) assert copyright on the software, and (2) offer
+you this License which gives you legal permission to copy, distribute
+and/or modify the software.
+
+ A secondary benefit of defending all users' freedom is that
+improvements made in alternate versions of the program, if they
+receive widespread use, become available for other developers to
+incorporate. Many developers of free software are heartened and
+encouraged by the resulting cooperation. However, in the case of
+software used on network servers, this result may fail to come about.
+The GNU General Public License permits making a modified version and
+letting the public access it on a server without ever releasing its
+source code to the public.
+
+ The GNU Affero General Public License is designed specifically to
+ensure that, in such cases, the modified source code becomes available
+to the community. It requires the operator of a network server to
+provide the source code of the modified version running there to the
+users of that server. Therefore, public use of a modified version, on
+a publicly accessible server, gives the public access to the source
+code of the modified version.
+
+ An older license, called the Affero General Public License and
+published by Affero, was designed to accomplish similar goals. This is
+a different license, not a version of the Affero GPL, but Affero has
+released a new version of the Affero GPL which permits relicensing under
+this license.
The precise terms and conditions for copying, distribution and
modification follow.
@@ -72,7 +60,7 @@ modification follow.
0. Definitions.
- "This License" refers to version 3 of the GNU General Public License.
+ "This License" refers to version 3 of the GNU Affero General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
@@ -549,35 +537,45 @@ to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
- 13. Use with the GNU Affero General Public License.
+ 13. Remote Network Interaction; Use with the GNU General Public License.
+
+ Notwithstanding any other provision of this License, if you modify the
+Program, your modified version must prominently offer all users
+interacting with it remotely through a computer network (if your version
+supports such interaction) an opportunity to receive the Corresponding
+Source of your version by providing access to the Corresponding Source
+from a network server at no charge, through some standard or customary
+means of facilitating copying of software. This Corresponding Source
+shall include the Corresponding Source for any work covered by version 3
+of the GNU General Public License that is incorporated pursuant to the
+following paragraph.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
+under version 3 of the GNU General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
+but the work with which it is combined will remain governed by version
+3 of the GNU General Public License.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
+the GNU Affero General Public License from time to time. Such new versions
+will be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
+Program specifies that a certain numbered version of the GNU Affero General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
+GNU Affero General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
+versions of the GNU Affero General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
@@ -635,40 +633,29 @@ the "copyright" line and a pointer to where the full notice is found.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
+ it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
+ GNU Affero General Public License for more details.
- You should have received a copy of the GNU General Public License
+ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- <program> Copyright (C) <year> <name of author>
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
+ If your software can interact with users remotely through a computer
+network, you should also make sure that it provides a way for users to
+get its source. For example, if your program is a web application, its
+interface could display a "Source" link that leads users to an archive
+of the code. There are many ways you could offer source, and different
+solutions will be better for different programs; see section 13 for the
+specific requirements.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
+For more information on this, and how to apply and follow the GNU AGPL, see
<https://www.gnu.org/licenses/>.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-<https://www.gnu.org/licenses/why-not-lgpl.html>.
diff --git a/Makefile.am b/Makefile.am
index 8e8a295..6bb43a9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
lib_LTLIBRARIES =
noinst_LTLIBRARIES =
noinst_PROGRAMS =
diff --git a/bootstrap b/bootstrap
index beb354f..a25989d 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1,5 +1,21 @@
#!/bin/sh
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
autoreconf -vif || exit 1
sed -i 's|SHELL = /bin/sh|SHELL = @SHELL@|g' po/Makefile.in.in || exit 1
diff --git a/ci b/ci
deleted file mode 100755
index 84790af..0000000
--- a/ci
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-ref=$(guix environment --ad-hoc --container git -- git symbolic-ref HEAD)
-commit=$(guix environment --ad-hoc --container git -- git rev-parse $ref)
-parent=$(guix environment --ad-hoc --container git -- git log --pretty=%P -n 1 $commit)
-
-./hooks/update $ref $parent $commit
diff --git a/ci.scm b/ci.scm
index 85fb21d..e8a1459 100644
--- a/ci.scm
+++ b/ci.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (vkraus packages webid-oidc))
(use-modules (gnu packages bash))
(use-modules (gnu packages base))
diff --git a/configure.ac b/configure.ac
index 0327beb..b43b5d0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,3 +1,19 @@
+dnl webid-oidc, implementation of the Solid specification
+dnl Copyright (C) 2020, 2021 Vivien Kraus
+
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU Affero General Public License as
+dnl published by the Free Software Foundation, either version 3 of the
+dnl License, or (at your option) any later version.
+
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU Affero General Public License for more details.
+
+dnl You should have received a copy of the GNU Affero General Public License
+dnl along with this program. If not, see <https://www.gnu.org/licenses/>.
+
AC_INIT([webid-oidc], m4_esyscmd([bash ./get-version]), [vivien@planete-kraus.eu])
AC_CONFIG_SRCDIR([src/libwebidoidc.c])
AM_INIT_AUTOMAKE([subdir-objects])
diff --git a/doc/Makefile.am b/doc/Makefile.am
index c339dc2..7cdbfd3 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
EXTRA_DIST += \
%reldir%/fdl.texi
diff --git a/doc/style.css b/doc/style.css
index f201219..e2dd04d 100644
--- a/doc/style.css
+++ b/doc/style.css
@@ -1,3 +1,20 @@
+/* webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
html {
background-color: silver;
}
diff --git a/get-version b/get-version
index 22aa929..4a80cdf 100755
--- a/get-version
+++ b/get-version
@@ -1,5 +1,21 @@
#!/bin/sh
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
TARBALL_VERSION=$(cat .tarball-version 2>/dev/null || echo "SNAPSHOT")
printf "%s" $TARBALL_VERSION
diff --git a/guix/vkraus/packages/webid-oidc.scm b/guix/vkraus/packages/webid-oidc.scm
index f5f95c7..0fd3146 100644
--- a/guix/vkraus/packages/webid-oidc.scm
+++ b/guix/vkraus/packages/webid-oidc.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (vkraus packages webid-oidc)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -106,7 +122,7 @@
(synopsis "")
(description "")
(home-page "https://labo.planete-kraus.eu/webid-oidc.git")
- (license license:gpl3+)
+ (license license:agpl3+)
(native-search-paths
(list (search-path-specification
(variable "LTDL_LIBRARY_PATH")
@@ -135,7 +151,10 @@
(inherit webid-oidc)
(name "webid-oidc-html")
(arguments
- '(#:phases
+ '(#:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (ice-9 textual-ports))
+ #:phases
(modify-phases
%standard-phases
(add-after
@@ -146,17 +165,37 @@
`("-j" ,(number->string (parallel-job-count)))
'())
,@make-flags))))
+ (add-after
+ 'build-html 'complete-corresponding-source
+ (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
+ (apply invoke "make" "dist"
+ `(,@(if parallel-build?
+ `("-j" ,(number->string (parallel-job-count)))
+ '())
+ ,@make-flags))))
(replace
'install
- (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
+ (lambda* (#:key make-flags parallel-build? outputs #:allow-other-keys)
(apply invoke "make" "install-html"
`(,@(if parallel-build?
`("-j" ,(number->string (parallel-job-count)))
'())
- ,@make-flags)))))))
+ ,@make-flags))
+ (let ((version
+ (car
+ (string-split
+ (call-with-input-file ".tarball-version"
+ get-string-all)
+ #\newline))))
+ (copy-file (string-append
+ "webid-oidc-" version ".tar.gz")
+ (string-append
+ (assoc-ref outputs "out")
+ "/share/doc/webid-oidc/webid-oidc.html/complete-corresponding-source.tar.gz"))))))))
(synopsis "HTML documentation for webid-oidc")
(description "The manual for webid-oidc is provided as a texinfo
-file, which is exported to HTML.")))
+file, which is exported to HTML. Also include the complete
+corresponding source, as an AGPL requirement.")))
(define-public (make-website webid-oidc)
(file-append (webid-oidc-htmlize webid-oidc) "/share/doc/webid-oidc/webid-oidc.html"))
diff --git a/guix/vkraus/services/webid-oidc.scm b/guix/vkraus/services/webid-oidc.scm
index 984eced..641c700 100644
--- a/guix/vkraus/services/webid-oidc.scm
+++ b/guix/vkraus/services/webid-oidc.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (vkraus services webid-oidc)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
@@ -16,6 +32,8 @@
webid-oidc-issuer-configuration?
(webid-oidc webid-oidc-issuer-configuration-webid-oidc
(default webid-oidc))
+ (complete-corresponding-source
+ webid-oidc-issuer-configuration-complete-corresponding-source)
(issuer webid-oidc-issuer-configuration-issuer)
(key-file webid-oidc-issuer-configuration-key-file
(default "/var/lib/webid-oidc/issuer/key.jwk"))
@@ -37,6 +55,8 @@
webid-oidc-reverse-proxy-configuration?
(webid-oidc webid-oidc-reverse-proxy-configuration-webid-oidc
(default webid-oidc))
+ (complete-corresponding-source
+ webid-oidc-reverse-proxy-configuration-complete-corresponding-source)
(port webid-oidc-reverse-proxy-port (default 8090))
(inbound-uri webid-oidc-reverse-proxy-configuration-inbound-uri)
(outbound-uri webid-oidc-reverse-proxy-configuration-outbound-uri)
@@ -52,6 +72,8 @@
webid-oidc-hello-configuration?
(webid-oidc webid-oidc-hello-configuration-webid-oidc
(default webid-oidc))
+ (complete-corresponding-source
+ webid-oidc-hello-configuration-complete-corresponding-source)
(port webid-oidc-hello-configuration-port (default 8089))
(extra-options
webid-oidc-hello-configuration-extra-options
@@ -63,6 +85,8 @@
webid-oidc-client-service-configuration?
(webid-oidc webid-oidc-client-service-configuration-webid-oidc
(default webid-oidc))
+ (complete-corresponding-source
+ webid-oidc-client-service-configuration-complete-corresponding-source)
(client-id webid-oidc-client-service-configuration-client-id)
(redirect-uri webid-oidc-client-service-configuration-redirect-uri)
(client-name webid-oidc-client-service-configuration-client-name (default "Example Solid App"))
@@ -78,6 +102,8 @@
webid-oidc-server-configuration?
(webid-oidc webid-oidc-server-configuration-webid-oidc
(default webid-oidc))
+ (complete-corresponding-source
+ webid-oidc-server-configuration-complete-corresponding-source)
(server-name webid-oidc-server-configuration-server-name)
(key-file webid-oidc-server-configuration-key-file
(default "/var/lib/webid-oidc/server/key.jwk"))
@@ -98,6 +124,7 @@
make-webid-oidc-issuer-configuration
webid-oidc-issuer-configuration?
webid-oidc-issuer-configuration-webid-oidc
+ webid-oidc-issuer-configuration-complete-corresponding-source
webid-oidc-issuer-configuration-issuer
webid-oidc-issuer-configuration-key-file
webid-oidc-issuer-configuration-subject
@@ -112,6 +139,7 @@
make-webid-oidc-reverse-proxy-configuration
webid-oidc-reverse-proxy-configuration?
webid-oidc-reverse-proxy-configuration-webid-oidc
+ webid-oidc-reverse-proxy-configuration-complete-corresponding-source
webid-oidc-reverse-proxy-configuration-port
webid-oidc-reverse-proxy-configuration-inbound-uri
webid-oidc-reverse-proxy-configuration-outbound-uri
@@ -122,6 +150,7 @@
make-webid-oidc-hello-configuration
webid-oidc-hello-configuration?
webid-oidc-hello-configuration-webid-oidc
+ webid-oidc-hello-configuration-complete-corresponding-source
webid-oidc-hello-configuration-port
webid-oidc-hello-configuration-extra-options
<webid-oidc-client-service-configuration>
@@ -129,6 +158,7 @@
make-webid-oidc-client-service-configuration
webid-oidc-client-service-configuration?
webid-oidc-client-service-configuration-webid-oidc
+ webid-oidc-client-service-configuration-complete-corresponding-source
webid-oidc-client-service-configuration-client-id
webid-oidc-client-service-configuration-redirect-uri
webid-oidc-client-service-configuration-client-name
@@ -140,6 +170,7 @@
make-webid-oidc-server-configuration
webid-oidc-server-configuration?
webid-oidc-server-configuration-webid-oidc
+ webid-oidc-server-configuration-complete-corresponding-source
webid-oidc-server-configuration-server-name
webid-oidc-server-configuration-key-file
webid-oidc-server-configuration-subject
@@ -153,7 +184,7 @@
(define webid-oidc-issuer-shepherd-service
(match-lambda
(($ <webid-oidc-issuer-configuration>
- webid-oidc issuer key-file subject password jwks-uri
+ webid-oidc ccs issuer key-file subject password jwks-uri
authorization-endpoint-uri token-endpoint-uri port
extra-options)
(with-imported-modules
@@ -181,6 +212,7 @@
(list
(string-append #$webid-oidc "/bin/webid-oidc")
"identity-provider"
+ "--complete-corresponding-source" #$ccs
"--server-name" #$issuer
"--key-file" #$key-file
"--subject" #$subject
@@ -204,7 +236,7 @@
(define webid-oidc-reverse-proxy-shepherd-service
(match-lambda
(($ <webid-oidc-reverse-proxy-configuration>
- webid-oidc port inbound-uri outbound-uri header
+ webid-oidc ccs port inbound-uri outbound-uri header
extra-options)
(with-imported-modules
(source-module-closure
@@ -231,6 +263,7 @@
(list
(string-append #$webid-oidc "/bin/webid-oidc")
"reverse-proxy"
+ "--complete-corresponding-source" #$ccs
"--port" (with-output-to-string (lambda () (display #$port)))
"--server-name" #$inbound-uri
"--backend-uri" #$outbound-uri
@@ -250,7 +283,7 @@
(define webid-oidc-hello-shepherd-service
(match-lambda
(($ <webid-oidc-hello-configuration>
- webid-oidc port extra-options)
+ webid-oidc ccs port extra-options)
(with-imported-modules
(source-module-closure
'((gnu build shepherd)
@@ -275,6 +308,7 @@
(make-forkexec-constructor
(list
(string-append #$webid-oidc "/bin/webid-oidc-hello")
+ "--complete-corresponding-source" #$ccs
"--port" (with-output-to-string (lambda () (display #$port)))
#$@extra-options)
#:user "webid-oidc"
@@ -289,7 +323,7 @@
(define webid-oidc-client-service-shepherd-service
(match-lambda
(($ <webid-oidc-client-service-configuration>
- webid-oidc client-id redirect-uri client-name client-uri port
+ webid-oidc ccs client-id redirect-uri client-name client-uri port
extra-options)
(with-imported-modules
(source-module-closure
@@ -314,6 +348,7 @@
(list
(string-append #$webid-oidc "/bin/webid-oidc")
"client-service"
+ "--complete-corresponding-source" #$ccs
"--client-id" #$client-id
"--redirect-uri" #$redirect-uri
"--client-name" #$client-name
@@ -332,7 +367,7 @@
(define webid-oidc-server-shepherd-service
(match-lambda
(($ <webid-oidc-server-configuration>
- webid-oidc server-name key-file subject password jwks-uri
+ webid-oidc ccs server-name key-file subject password jwks-uri
authorization-endpoint-uri token-endpoint-uri port
extra-options)
(with-imported-modules
@@ -360,6 +395,7 @@
(list
(string-append #$webid-oidc "/bin/webid-oidc")
"server"
+ "--complete-corresponding-source" #$ccs
"--server-name" #$server-name
"--key-file" #$key-file
"--subject" #$subject
diff --git a/guix/vkraus/systems/webid-oidc.scm b/guix/vkraus/systems/webid-oidc.scm
deleted file mode 100644
index 704c746..0000000
--- a/guix/vkraus/systems/webid-oidc.scm
+++ /dev/null
@@ -1,80 +0,0 @@
-(define-module (vkraus systems webid-oidc)
- #:use-module (gnu)
- #:use-module (guix)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (vkraus services webid-oidc)
- #:use-module (vkraus packages webid-oidc)
- #:use-module (gnu services web))
-
-(operating-system
- (locale "fr_FR.utf8")
- (timezone "Europe/Paris")
- (keyboard-layout (keyboard-layout "fr"))
- (host-name "webid-oidc-issuer")
- (users %base-user-accounts)
- (packages
- (append
- (list (specification->package "nss-certs"))
- %base-packages))
- (services
- (append
- (cons*
- (service webid-oidc-issuer-service-type
- (webid-oidc-issuer-configuration
- (webid-oidc webid-oidc-snapshot)
- (issuer "http://localhost:8080")
- (subject "http://localhost:8080/profile/card#me")
- (password "p4ssw0rd")
- (jwks-uri "http://localhost:8080/keys")
- (authorization-endpoint-uri "http://localhost:8080/authorize")
- (token-endpoint-uri "http://localhost:8080/token")
- (port 8080)))
- (service webid-oidc-hello-service-type
- (webid-oidc-hello-configuration
- (webid-oidc webid-oidc-snapshot)
- (port 8081)))
- (service nginx-service-type
- (nginx-configuration
- (upstream-blocks
- (list
- (nginx-upstream-configuration
- (name "issuer")
- (servers (list "localhost:8080")))
- (nginx-upstream-configuration
- (name "server")
- (servers (list "localhost:8081")))))
- (server-blocks
- (list
- (nginx-server-configuration
- (server-name '("localhost"))
- (listen '("80"))
- (locations
- (list
- (nginx-location-configuration
- (uri "/profile/card")
- (body (list "proxy_pass http://issuer;")))
- (nginx-location-configuration
- (uri "/keys")
- (body (list "proxy_pass http://issuer;")))
- (nginx-location-configuration
- (uri "/authorize")
- (body (list "proxy_pass http://issuer;")))
- (nginx-location-configuration
- (uri "/token")
- (body (list "proxy_pass http://issuer;")))
- (nginx-location-configuration
- (uri "/")
- (body (list "proxy_pass http://server;"))))))))))
- %base-services)))
- (bootloader
- (bootloader-configuration
- (bootloader grub-efi-bootloader)
- (target "/boot/efi")
- (keyboard-layout keyboard-layout)))
- (file-systems
- (cons* (file-system
- (mount-point "/")
- (device "/dev/sda")
- (type "ext4"))
- %base-file-systems)))
diff --git a/hooks/update b/hooks/update
index 1fc463d..325adfd 100755
--- a/hooks/update
+++ b/hooks/update
@@ -1,5 +1,21 @@
#!/bin/sh
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
refname="$1"
oldrev="$2"
newrev="$3"
@@ -17,42 +33,32 @@ then
exit 0
fi
-if test "x$refname" = "xrefs/notes/dist"
-then
- >&2 echo "Error: the server does not accept dist notes."
- exit 1
-fi
-
>&2 echo "Checking all refs in range $span."
-for ref in $(guix environment --ad-hoc git -- git rev-list $span)
+CHANNEL=$(mktemp -d 2>/dev/null || mktemp -d -t "channel")
+>&2 echo "The channel is in $CHANNEL."
+
+for ref in $(guix environment --ad-hoc git -- git rev-list --reverse $span)
do
# If there is not already a note on the refs/notes/dist ref, then we
# should run the CI.
>&2 echo "Checking new commit $ref."
- if git notes --ref="refs/notes/dist" list "$ref"
+ if test "x$ref" = "x0e29ddc3c41870e14da87770a429a94f80dd4110"
then
- >&2 echo "CI already ran for $ref, skipping."
+ >&2 echo "This is the root, skipping."
else
- >&2 echo "This commit has not seen CI yet."
- CLONEREPO=$(mktemp -d 2>/dev/null || mktemp -d -t "clone")
- REPO=$(pwd)
- cd "$CLONEREPO"
- guix environment --ad-hoc --pure git -- git clone "$REPO" .
- guix environment --ad-hoc --container git -- git checkout "$ref"
- guix environment --ad-hoc --container git -- git checkout-index -a -f --prefix=source/
- if OUTCOME=$(guix build -c 4 -L guix -f ci.scm)
+ >&2 echo "Running CI for $ref..."
+ guix environment --ad-hoc git -- git archive "-o" "$CHANNEL/source.tar.gz" "$ref" guix ci.scm || exit 1
+ (cd "$CHANNEL" ; rm -rf "source" ; mkdir "source" ; cd "source" ; guix environment --ad-hoc tar -- tar xf ../source.tar.gz)
+ export CI_REF="$ref"
+ if OUTCOME=$(guix build -c 4 -L "$CHANNEL/source/guix" -f "$CHANNEL/source/ci.scm")
then
- cd $REPO
- export BLOB="$(git hash-object -w $OUTCOME/*.tar.gz)"
- >&2 echo "Adding blob $BLOB as the results of the CI."
- guix environment --ad-hoc --container git -- git notes --ref=refs/notes/dist add \
- --allow-empty -f -C "$BLOB" "$ref"
- rm -rf $CLONEREPO
+ >&2 echo "CI ran: $OUTCOME."
else
- cd $REPO
- rm -rf $CLONEREPO
+ rm -rf $CHANNEL
exit 1
fi
fi
done
+
+rm -rf $CHANNEL
diff --git a/man/Makefile.am b/man/Makefile.am
index b0b08d6..05e8bb7 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
dist_man8_MANS = webid-oidc.man webid-oidc-example-app.man
EXTRA_DIST = ./reset-env
diff --git a/man/reset-env.in b/man/reset-env.in
index d333e44..650082f 100755
--- a/man/reset-env.in
+++ b/man/reset-env.in
@@ -1,5 +1,21 @@
#!@SHELL@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
export LANG=C
export XDG_DATA_HOME=UNKNOWN
export XDG_CACHE_HOME=UNKNOWN
diff --git a/po/POTFILES.in b/po/POTFILES.in
index b6f84a8..7d703f8 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
# List of source files which contain translatable strings.
src/libwebidoidc.c
src/random/random.c
diff --git a/po/fr.po b/po/fr.po
index 42103d9..2c28f4a 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: webid-oidc 0.0.0\n"
"Report-Msgid-Bugs-To: vivien@planete-kraus.eu\n"
-"POT-Creation-Date: 2021-06-28 22:58+0200\n"
-"PO-Revision-Date: 2021-06-28 19:18+0200\n"
+"POT-Creation-Date: 2021-07-01 16:40+0200\n"
+"PO-Revision-Date: 2021-07-01 16:40+0200\n"
"Last-Translator: Vivien Kraus <vivien@planete-kraus.eu>\n"
"Language-Team: French <vivien@planete-kraus.eu>\n"
"Language: fr\n"
@@ -12,24 +12,24 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: src/libwebidoidc.c:11
+#: src/libwebidoidc.c:29
msgid "This is the main function."
msgstr "Ceci est la fonction principale."
-#: src/random/random.c:199
+#: src/random/random.c:217
#, c-format
msgid "Could not set the global random generator up.\n"
msgstr "Impossible d'initialiser le générateur de nombres aléatoires global.\n"
-#: src/random/random.c:213 src/random/random.c:225 src/random/random.c:238
-#: src/random/random.c:249 src/random/random.c:260
+#: src/random/random.c:231 src/random/random.c:243 src/random/random.c:256
+#: src/random/random.c:267 src/random/random.c:278
#, c-format
msgid "Could not set the global random generator up: out of memory.\n"
msgstr ""
"Impossible d'initialiser le générateur de nombres aléatoires global : plus "
"de mémoire.\n"
-#: src/random/random.c:270
+#: src/random/random.c:288
#, c-format
msgid ""
"Warning: could not open the seed file, maybe the parent directory is "
@@ -38,44 +38,44 @@ msgstr ""
"Attention : impossible d'ouvrir le fichier graine, peut-être que le dossier "
"parent n'existe pas...\n"
-#: src/random/random.c:274
+#: src/random/random.c:292
#, c-format
msgid "Warning: could not create the cache directory '%s'.\n"
msgstr "Attention : impossible de créer le dossier de cache « %s ».\n"
-#: src/random/random.c:276
+#: src/random/random.c:294
msgid "when creating the cache directory"
msgstr "en créant le dossier de cache"
-#: src/random/random.c:282
+#: src/random/random.c:300
#, c-format
msgid "Warning: could not create the package cache directory '%s'.\n"
msgstr ""
"Attention : impossible de créer le dossier de cache du paquet « %s ».\n"
-#: src/random/random.c:284
+#: src/random/random.c:302
msgid "when creating the package cache directory"
msgstr "en créant le dossier de cache du paquet"
-#: src/random/random.c:290
+#: src/random/random.c:308
#, c-format
msgid "Could not open the seed file '%s'.\n"
msgstr "Impossible d'ouvrir le fichier graine « %s ».\n"
-#: src/random/random.c:291
+#: src/random/random.c:309
msgid "when opening the seed file"
msgstr "en ouvrant le fichier graine"
-#: src/random/random.c:311
+#: src/random/random.c:329
#, c-format
msgid "Could not lock the seed file '%s'.\n"
msgstr "Impossible de verrouiller le fichier graine « %s ».\n"
-#: src/random/random.c:313
+#: src/random/random.c:331
msgid "when locking the seed file"
msgstr "en verrouillant le fichier graine"
-#: src/random/random.c:327
+#: src/random/random.c:345
#, c-format
msgid ""
"Warning: the seed file '%s' is too short. This weakens the random number "
@@ -84,30 +84,30 @@ msgstr ""
"Attention : le fichier de graine « %s » est trop court. Ceci affaiblit le "
"générateur de nombres aléatoires. Veuillez écrire plus de données dedans.\n"
-#: src/random/random.c:344
+#: src/random/random.c:362
#, c-format
msgid "Could not update the seed file '%s'.\n"
msgstr "Impossible de mettre à jour le fichier graine « %s ».\n"
-#: src/random/random.c:345
+#: src/random/random.c:363
msgid "when rewinding the seed file"
msgstr "en rembobinant le fichier de graine"
-#: src/random/random.c:377
+#: src/random/random.c:395
#, c-format
msgid "Could not unlock the seed file '%s'.\n"
msgstr "Impossible de déverrouiller le fichier graine « %s ».\n"
-#: src/random/random.c:379
+#: src/random/random.c:397
msgid "when unlocking the seed file"
msgstr "en déverrouillant le fichier graine"
-#: src/random/random.c:407
+#: src/random/random.c:425
#, c-format
msgid "Could not set the thread-local random generator up.\n"
msgstr "Impossible d'initialiser le générateur de nombres aléatoires du fil.\n"
-#: src/random/random.c:415
+#: src/random/random.c:433
#, c-format
msgid ""
"The random module has not been initialized. Please call "
@@ -116,111 +116,111 @@ msgstr ""
"Le module aléatoire n'a pas été initialisé. Veuillez appeler "
"webid_oidc_random_init d'abort.\n"
-#: src/random/generate-random.c:29
+#: src/random/generate-random.c:47
#, c-format
msgid "Usage: generate-random [NUMBER OF BYTES]\n"
msgstr "Utilisation : generate-random [NOMBRE D'OCTETS]\n"
-#: src/jwk/generate-key.c:34
+#: src/jwk/generate-key.c:52
#, c-format
msgid "Usage: generate-key [NUMBER OF BITS | CURVE]\n"
msgstr "Utilisation : generate-key [NOMBRE DE BITS | COURBE]\n"
-#: src/scm/webid-oidc/errors.scm:1031
+#: src/scm/webid-oidc/errors.scm:1047
msgid "that’s how it is"
msgstr "c’est comme ça"
-#: src/scm/webid-oidc/errors.scm:1036
+#: src/scm/webid-oidc/errors.scm:1052
#, scheme-format
msgid "the value ~s is not a base64 string (because ~a)"
msgstr "la valeur ~s n’est pas une chaîne base64 (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1039
+#: src/scm/webid-oidc/errors.scm:1055
#, scheme-format
msgid "the value ~s is not JSON (because ~a)"
msgstr "la valeur ~s n’est pas du JSON (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1042
+#: src/scm/webid-oidc/errors.scm:1058
#, scheme-format
msgid "the value ~s is not Turtle (because ~a)"
msgstr "la valeur ~s n’est pas du Turtle (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1045
+#: src/scm/webid-oidc/errors.scm:1061
#, scheme-format
msgid "the value ~s does not identify an elleptic curve"
msgstr "la valeur ~s n’identifie pas une courbe elliptique"
-#: src/scm/webid-oidc/errors.scm:1050
+#: src/scm/webid-oidc/errors.scm:1066
#, scheme-format
msgid "the value ~s does not identify a JWK (because ~a)"
msgstr "la valeur ~s n’identifie pas une JWK (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1052
+#: src/scm/webid-oidc/errors.scm:1068
#, scheme-format
msgid "the value ~s does not identify a JWK"
msgstr "la valeur ~s n’identifie pas une JWK"
-#: src/scm/webid-oidc/errors.scm:1057
+#: src/scm/webid-oidc/errors.scm:1073
#, scheme-format
msgid "the value ~s does not identify a public JWK (because ~a)"
msgstr "la valeur ~s n’identifie pas une JWK publique (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1059
+#: src/scm/webid-oidc/errors.scm:1075
#, scheme-format
msgid "the value ~s does not identify a public JWK"
msgstr "la valeur ~s n’identifie pas une JWK publique"
-#: src/scm/webid-oidc/errors.scm:1064
+#: src/scm/webid-oidc/errors.scm:1080
#, scheme-format
msgid "the value ~s does not identify a private JWK (because ~a)"
msgstr "la valeur ~s n’identifie pas une JWK privée (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1066
+#: src/scm/webid-oidc/errors.scm:1082
#, scheme-format
msgid "the value ~s does not identify a private JWK"
msgstr "la valeur ~s n’identifie pas une JWK privée"
-#: src/scm/webid-oidc/errors.scm:1071
+#: src/scm/webid-oidc/errors.scm:1087
#, scheme-format
msgid "the value ~s does not identify a JWKS (because ~a)"
msgstr "la valeur ~s n’identifie pas un JWKS (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1073
+#: src/scm/webid-oidc/errors.scm:1089
#, scheme-format
msgid "the value ~s does not identify a JWKS"
msgstr "la valeur ~s n’identifie pas un JWKS"
-#: src/scm/webid-oidc/errors.scm:1076
+#: src/scm/webid-oidc/errors.scm:1092
#, scheme-format
msgid "the value ~s does not identify a hash algorithm"
msgstr "la valeur ~s n’identifie pas un algorithme de hachage"
-#: src/scm/webid-oidc/errors.scm:1079
+#: src/scm/webid-oidc/errors.scm:1095
#, scheme-format
msgid "the value ~s is not an alist or misses key ~s"
msgstr "la valeur ~s n’est pas une alist ou il manque la clé ~s"
-#: src/scm/webid-oidc/errors.scm:1082
+#: src/scm/webid-oidc/errors.scm:1098
#, scheme-format
msgid "the value ~s is not a JWS header (because ~a)"
msgstr "la valeur ~s n’est pas un header JWS (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1085
+#: src/scm/webid-oidc/errors.scm:1101
#, scheme-format
msgid "the value ~s is not a JWS payload (because ~a)"
msgstr "la valeur ~s n’est pas un contenu JWS (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1088
+#: src/scm/webid-oidc/errors.scm:1104
#, scheme-format
msgid "the value ~s is not a JWS (because ~a)"
msgstr "la valeur ~s n’est pas un JWS (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1091
+#: src/scm/webid-oidc/errors.scm:1107
#, scheme-format
msgid "the string ~s cannot be split in 3 parts with ~s"
msgstr "la chaîne ~s ne peut pas être découpée en 3 parties avec ~s"
-#: src/scm/webid-oidc/errors.scm:1094
+#: src/scm/webid-oidc/errors.scm:1110
#, scheme-format
msgid ""
"all key candidates failed to verify signature ~s with algorithm ~s and "
@@ -229,17 +229,17 @@ msgstr ""
"aucune clé candidate n’a pu vérifier la signature ~s avec l’algorithme ~s et "
"le contenu ~a (il y en avait ~a : ~s)"
-#: src/scm/webid-oidc/errors.scm:1097
+#: src/scm/webid-oidc/errors.scm:1113
#, scheme-format
msgid "I cannot decode JWS ~a (because ~a)"
msgstr "je n’ai pas pu décoder le JWS encodé par ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1100
+#: src/scm/webid-oidc/errors.scm:1116
#, scheme-format
msgid "I cannot encode JWS ~a (because ~a)"
msgstr "je n’ai pas pu encoder le JWS ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1103
+#: src/scm/webid-oidc/errors.scm:1119
#, scheme-format
msgid ""
"the server request unexpectedly failed with code ~a and reason phrase ~s"
@@ -247,338 +247,338 @@ msgstr ""
"la requête au serveur a échoué de façon inattendue avec un code ~a et une "
"raison ~s"
-#: src/scm/webid-oidc/errors.scm:1108
+#: src/scm/webid-oidc/errors.scm:1124
#, scheme-format
msgid "the header ~a should not have the value ~s"
msgstr "l’en-tête ~a ne devrait pas avoir la valeur ~s"
-#: src/scm/webid-oidc/errors.scm:1110
+#: src/scm/webid-oidc/errors.scm:1126
#, scheme-format
msgid "the header ~a should be present"
msgstr "l’en-tête ~a devrait être présent"
-#: src/scm/webid-oidc/errors.scm:1113
+#: src/scm/webid-oidc/errors.scm:1129
#, scheme-format
msgid "the server response wasn't expected: ~s (because ~a)"
msgstr "la réponse du serveur est inattendue : ~s (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1119
+#: src/scm/webid-oidc/errors.scm:1135
#, scheme-format
msgid "the value ~s is not an OIDC configuration (because ~a)"
msgstr "la valeur ~s n’est pas une configuration OIDC (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1124
+#: src/scm/webid-oidc/errors.scm:1140
#, scheme-format
msgid "the webid field is incorrect: ~s"
msgstr "le champ webid est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1125
+#: src/scm/webid-oidc/errors.scm:1141
msgid "the webid field is missing"
msgstr "le champ webid est manquant"
-#: src/scm/webid-oidc/errors.scm:1129
+#: src/scm/webid-oidc/errors.scm:1145
#, scheme-format
msgid "the sub field is incorrect: ~s"
msgstr "le champ sub est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1130
+#: src/scm/webid-oidc/errors.scm:1146
msgid "the sub field is missing"
msgstr "le champ sub est manquant"
-#: src/scm/webid-oidc/errors.scm:1134
+#: src/scm/webid-oidc/errors.scm:1150
#, scheme-format
msgid "the iss field is incorrect: ~s"
msgstr "le champ iss est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1135
+#: src/scm/webid-oidc/errors.scm:1151
msgid "the iss field is missing"
msgstr "le champ iss est manquant"
-#: src/scm/webid-oidc/errors.scm:1139
+#: src/scm/webid-oidc/errors.scm:1155
#, scheme-format
msgid "the aud field is incorrect: ~s"
msgstr "le champ aud est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1140
+#: src/scm/webid-oidc/errors.scm:1156
msgid "the aud field is missing"
msgstr "le champ aud est manquant"
-#: src/scm/webid-oidc/errors.scm:1144
+#: src/scm/webid-oidc/errors.scm:1160
#, scheme-format
msgid "the iat field is incorrect: ~s"
msgstr "le champ iat est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1145
+#: src/scm/webid-oidc/errors.scm:1161
msgid "the iat field is missing"
msgstr "le champ iat est manquant"
-#: src/scm/webid-oidc/errors.scm:1149
+#: src/scm/webid-oidc/errors.scm:1165
#, scheme-format
msgid "the exp field is incorrect: ~s"
msgstr "le champ exp est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1150
+#: src/scm/webid-oidc/errors.scm:1166
msgid "the exp field is missing"
msgstr "le champ exp est manquant"
-#: src/scm/webid-oidc/errors.scm:1154
+#: src/scm/webid-oidc/errors.scm:1170
#, scheme-format
msgid "the cnf/jkt field is incorrect: ~s"
msgstr "le champ cnf/jkt est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1155
+#: src/scm/webid-oidc/errors.scm:1171
msgid "the cnf/jkt field is missing"
msgstr "le champ cnf/jkt est manquant"
-#: src/scm/webid-oidc/errors.scm:1159
+#: src/scm/webid-oidc/errors.scm:1175
#, scheme-format
msgid "the client-id field is incorrect: ~s"
msgstr "le champ client-id est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1160
+#: src/scm/webid-oidc/errors.scm:1176
msgid "the client-id field is missing"
msgstr "le champ client-id est manquant"
-#: src/scm/webid-oidc/errors.scm:1164
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:133
+#: src/scm/webid-oidc/errors.scm:1180
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:149
#, scheme-format
msgid "the redirect_uris field is incorrect: ~s"
msgstr "le champ redirect_uris est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1165
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:134
+#: src/scm/webid-oidc/errors.scm:1181
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:150
msgid "the redirect_uris field is missing"
msgstr "le champ redirect_uris est manquant"
-#: src/scm/webid-oidc/errors.scm:1169
+#: src/scm/webid-oidc/errors.scm:1185
#, scheme-format
msgid "the typ field is incorrect: ~s"
msgstr "le champ typ est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1170
+#: src/scm/webid-oidc/errors.scm:1186
msgid "the typ field is missing"
msgstr "le champ typ est manquant"
-#: src/scm/webid-oidc/errors.scm:1174
+#: src/scm/webid-oidc/errors.scm:1190
#, scheme-format
msgid "the jwk field is incorrect: ~s (because ~a)"
msgstr "le champ jwk est incorrect : ~s (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1176
+#: src/scm/webid-oidc/errors.scm:1192
msgid "the jwk field is missing"
msgstr "le champ jwk est manquant"
-#: src/scm/webid-oidc/errors.scm:1180
+#: src/scm/webid-oidc/errors.scm:1196
#, scheme-format
msgid "the jti field is incorrect: ~s"
msgstr "le champ jti est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1181
+#: src/scm/webid-oidc/errors.scm:1197
msgid "the jti field is missing"
msgstr "le champ jti est manquant"
-#: src/scm/webid-oidc/errors.scm:1185
+#: src/scm/webid-oidc/errors.scm:1201
#, scheme-format
msgid "the nonce field is incorrect: ~s"
msgstr "le champ nonce est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1186
+#: src/scm/webid-oidc/errors.scm:1202
msgid "the nonce field is missing"
msgstr "le champ nonce est manquant"
-#: src/scm/webid-oidc/errors.scm:1190
+#: src/scm/webid-oidc/errors.scm:1206
#, scheme-format
msgid "the htm field is incorrect: ~s"
msgstr "le champ htm est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1191
+#: src/scm/webid-oidc/errors.scm:1207
msgid "the htm field is missing"
msgstr "le champ htm est manquant"
-#: src/scm/webid-oidc/errors.scm:1195
+#: src/scm/webid-oidc/errors.scm:1211
#, scheme-format
msgid "the htu field is incorrect: ~s"
msgstr "le champ htu est incorrect : ~s"
-#: src/scm/webid-oidc/errors.scm:1196
+#: src/scm/webid-oidc/errors.scm:1212
msgid "the htu field is missing"
msgstr "le champ htu est manquant"
-#: src/scm/webid-oidc/errors.scm:1198
+#: src/scm/webid-oidc/errors.scm:1214
#, scheme-format
msgid "~s is not an access token (because ~a)"
msgstr "~s n’est pas un jeton d’accès (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1201
+#: src/scm/webid-oidc/errors.scm:1217
#, scheme-format
msgid "~s is not an access token header (because ~a)"
msgstr "~s n’est pas un en-tête de jeton d’accès (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1204
+#: src/scm/webid-oidc/errors.scm:1220
#, scheme-format
msgid "~s is not an access token payload (because ~a)"
msgstr "~s n’est pas un contenu de jeton d’accès (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1207
+#: src/scm/webid-oidc/errors.scm:1223
#, scheme-format
msgid "~s is not a DPoP proof (because ~a)"
msgstr "~s n’est pas une preuve DPoP (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1210
+#: src/scm/webid-oidc/errors.scm:1226
#, scheme-format
msgid "~s is not a DPoP proof header (because ~a)"
msgstr "~s n’est pas un en-tête de preuve DPoP (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1213
+#: src/scm/webid-oidc/errors.scm:1229
#, scheme-format
msgid "~s is not a DPoP proof payload (because ~a)"
msgstr "~s n’est pas un contenu de preuve DPoP (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1216
+#: src/scm/webid-oidc/errors.scm:1232
#, scheme-format
msgid "I cannot fetch the issuer configuration of ~a (because ~a)"
msgstr ""
"je n’ai pas pu récupérer la configuration de l’émetteur ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1223
+#: src/scm/webid-oidc/errors.scm:1239
#, scheme-format
msgid "I cannot fetch the JWKS of ~a at ~a (because ~a)"
msgstr "je n’ai pas pu récupérer le JWKS de ~a à ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1234
+#: src/scm/webid-oidc/errors.scm:1250
#, scheme-format
msgid "the HTTP method is signed for ~s, but ~s was requested"
msgstr "la méthode HTTP a été signée pour ~s, mais ~s a été demandé"
-#: src/scm/webid-oidc/errors.scm:1237
+#: src/scm/webid-oidc/errors.scm:1253
#, scheme-format
msgid "the HTTP uri is signed for ~a, but ~a was requested"
msgstr "l’uri HTTP a été signé pour ~a, mais ~a a été demandé"
-#: src/scm/webid-oidc/errors.scm:1240
+#: src/scm/webid-oidc/errors.scm:1256
#, scheme-format
msgid "the date is ~a, but the DPoP proof is signed in the future at ~a"
msgstr "la date est ~a, mais la preuve DPoP a été signée dans le futur à ~a"
-#: src/scm/webid-oidc/errors.scm:1244
+#: src/scm/webid-oidc/errors.scm:1260
#, scheme-format
msgid "the date is ~a, but the DPoP proof was signed too long ago at ~a"
msgstr ""
"la date est ~a, mais la preuve DPoP a été signée il y a trop longtemps à ~a"
-#: src/scm/webid-oidc/errors.scm:1253
+#: src/scm/webid-oidc/errors.scm:1269
#, scheme-format
msgid "the key ~s does not hash to ~a"
msgstr "la clé ~s ne donne pas un hash de ~a"
-#: src/scm/webid-oidc/errors.scm:1255
+#: src/scm/webid-oidc/errors.scm:1271
#, scheme-format
msgid "the key confirmation of ~s failed (because ~a)"
msgstr "la confirmation de clé de ~s a échoué (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1257
+#: src/scm/webid-oidc/errors.scm:1273
#, scheme-format
msgid "the key confirmation of ~s failed"
msgstr "la confirmation de la clé ~s a échoué"
-#: src/scm/webid-oidc/errors.scm:1259
+#: src/scm/webid-oidc/errors.scm:1275
#, scheme-format
msgid "the jti ~s has already been found (because ~a)"
msgstr "le jti ~s a déjà été trouvé (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1262
+#: src/scm/webid-oidc/errors.scm:1278
#, scheme-format
msgid "I cannot decode ~s as an access token (because ~a)"
msgstr "je n’ai pas pu décoder ~s comme jeton d’accès (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1265
+#: src/scm/webid-oidc/errors.scm:1281
#, scheme-format
msgid "I cannot encode ~s as an access token with key ~s (because ~a)"
msgstr ""
"je n’ai pas pu encoder ~s comme un jeton d’accès avec la clé ~s (parce que "
"~a)"
-#: src/scm/webid-oidc/errors.scm:1268
+#: src/scm/webid-oidc/errors.scm:1284
#, scheme-format
msgid "I cannot decode ~s as a DPoP proof (because ~a)"
msgstr "je n’ai pas pu décoder ~s comme preuve DPoP (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1271
+#: src/scm/webid-oidc/errors.scm:1287
#, scheme-format
msgid "I cannot encode ~s as a DPoP proof (because ~a)"
msgstr "je n’ai pas pu encoder ~s comme une preuve DPoP (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1274
+#: src/scm/webid-oidc/errors.scm:1290
#, scheme-format
msgid "I could not fetch a RDF graph at ~a (because ~a)"
msgstr "je n’ai pas pu récupérer de graphe RDF à ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1277
+#: src/scm/webid-oidc/errors.scm:1293
#, scheme-format
msgid "~s is not a client manifest (because ~a)"
msgstr "~s n’est pas un manifeste client (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1280
+#: src/scm/webid-oidc/errors.scm:1296
#, scheme-format
msgid "~s does not authorize redirection URI ~a"
msgstr "~s n’autorise pas l’URI de redirection ~a"
-#: src/scm/webid-oidc/errors.scm:1283
+#: src/scm/webid-oidc/errors.scm:1299
msgid "I cannot serve a public manifest"
msgstr "je ne peux pas servir un manifeste public"
-#: src/scm/webid-oidc/errors.scm:1285
+#: src/scm/webid-oidc/errors.scm:1301
#, scheme-format
msgid "~a does not have a client manifest registration triple"
msgstr "~a n’a pas de triplet d’enregistrement de manifeste client"
-#: src/scm/webid-oidc/errors.scm:1288
+#: src/scm/webid-oidc/errors.scm:1304
#, scheme-format
msgid "the client manifest at ~a is advertised for ~a"
msgstr "le manifeste client ~a est publié pour ~a"
-#: src/scm/webid-oidc/errors.scm:1291
+#: src/scm/webid-oidc/errors.scm:1307
#, scheme-format
msgid "I could not fetch the client manifest of ~a (because ~a)"
msgstr "je n’ai pas pu récupérer le manifeste client de ~a (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1294
+#: src/scm/webid-oidc/errors.scm:1310
#, scheme-format
msgid "~s is not an authorization code (because ~a)"
msgstr "~s n’est pas un code d’autorisation (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1297
+#: src/scm/webid-oidc/errors.scm:1313
#, scheme-format
msgid "~s is not an authorization code header (because ~a)"
msgstr "~s n’est pas un en-tête de code d’autorisation (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1300
+#: src/scm/webid-oidc/errors.scm:1316
#, scheme-format
msgid "~s is not an authorization code payload (because ~a)"
msgstr "~s n’est pas un contenu de code d’autorisation (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1303
+#: src/scm/webid-oidc/errors.scm:1319
#, scheme-format
msgid "the current time is ~a, and the authorization code expired at ~a"
msgstr ""
"la date est actuellement ~a, et le code d’autorisation a expiré à la date ~a"
-#: src/scm/webid-oidc/errors.scm:1307
+#: src/scm/webid-oidc/errors.scm:1323
#, scheme-format
msgid "I cannot decode ~s as an authorization code (because ~a)"
msgstr "je n’ai pas pu décoder ~s comme un code d’autorisation (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1310
+#: src/scm/webid-oidc/errors.scm:1326
#, scheme-format
msgid "I cannot encode ~s as an authorization code (because ~a)"
msgstr "je n’ai pas pu encoder ~s comme un code d’autorisation (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1313
+#: src/scm/webid-oidc/errors.scm:1329
#, scheme-format
msgid "there is no such refresh token as ~s"
msgstr "il n’y a pas de jeton de rafraîchissement ~s"
-#: src/scm/webid-oidc/errors.scm:1316
+#: src/scm/webid-oidc/errors.scm:1332
#, scheme-format
msgid ""
"the refresh token is bound to a key confirmed as ~s, but it is used with key "
@@ -587,45 +587,45 @@ msgstr ""
"Le jeton de rafraîchissement est lié à une clé confirmée par ~s, mais il est "
"utilisé avec la clé ~s"
-#: src/scm/webid-oidc/errors.scm:1319
+#: src/scm/webid-oidc/errors.scm:1335
#, scheme-format
msgid "I cannot decode ~s as an ID token (because ~a)"
msgstr "je n’ai pas pu décoder ~s comme jeton d’identité (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1322
+#: src/scm/webid-oidc/errors.scm:1338
#, scheme-format
msgid "I cannot encode ~s as an ID token (because ~a)"
msgstr "je n’ai pas pu encoder ~s comme un jeton d’identité (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1325
+#: src/scm/webid-oidc/errors.scm:1341
#, scheme-format
msgid "the grant type ~s is not supported"
msgstr "le type d’octroi ~s n’est pas supporté "
-#: src/scm/webid-oidc/errors.scm:1328
+#: src/scm/webid-oidc/errors.scm:1344
msgid "there is no authorization code in the request"
msgstr "il n’y a pas de code d’autorisation dans la requête"
-#: src/scm/webid-oidc/errors.scm:1330
+#: src/scm/webid-oidc/errors.scm:1346
msgid "there is no refresh token in the request"
msgstr "il n’y a pas de jeton de rafraîchissement dans la requête"
-#: src/scm/webid-oidc/errors.scm:1332
+#: src/scm/webid-oidc/errors.scm:1348
#, scheme-format
msgid "~s is not an ID token (because ~a)"
msgstr "~s n’est pas un jeton d’identité (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1335
+#: src/scm/webid-oidc/errors.scm:1351
#, scheme-format
msgid "~s is not an ID token header (because ~a)"
msgstr "~s n’est pas un en-tête de jeton d’identité (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1338
+#: src/scm/webid-oidc/errors.scm:1354
#, scheme-format
msgid "~s is not an ID token payload (because ~a)"
msgstr "~s n’est pas un contenu de jeton d’identité (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1341
+#: src/scm/webid-oidc/errors.scm:1357
#, scheme-format
msgid ""
"I couldn’t set the locale to ~s as an approximation of the client locale ~s"
@@ -633,12 +633,12 @@ msgstr ""
"je n’ai pas pu définir la locale à ~s comme approximation de la locale du "
"client ~s"
-#: src/scm/webid-oidc/errors.scm:1344
+#: src/scm/webid-oidc/errors.scm:1360
#, scheme-format
msgid "~s does not admit ~s as an identity provider"
msgstr "~s n’admet pas ~s comme fournisseur d’identité"
-#: src/scm/webid-oidc/errors.scm:1347
+#: src/scm/webid-oidc/errors.scm:1363
#, scheme-format
msgid ""
"~a is neither an identity provider (because ~a) nor a webid (because ~a)"
@@ -646,76 +646,76 @@ msgstr ""
"~a n’est ni un fournisseur d’identité (parce que ~a) ni un webid (parce que "
"~a)"
-#: src/scm/webid-oidc/errors.scm:1352
+#: src/scm/webid-oidc/errors.scm:1368
#, scheme-format
msgid "the token request failed (because ~a)"
msgstr "la requête de jeton a échoué (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1355
+#: src/scm/webid-oidc/errors.scm:1371
#, scheme-format
msgid "you don’t have a refresh token for identity ~a certified by ~a in ~s"
msgstr ""
"vous n’avez pas de jeton de rafraîchissement pour l’identité ~a certifié par "
"~a dans ~s"
-#: src/scm/webid-oidc/errors.scm:1360
+#: src/scm/webid-oidc/errors.scm:1376
#, scheme-format
msgid "all identity provider candidates for ~a failed: ~a"
msgstr "tous les candidats de fournisseurs d’identité pour ~a ont échoué : ~a"
-#: src/scm/webid-oidc/errors.scm:1364
+#: src/scm/webid-oidc/errors.scm:1380
#, scheme-format
msgid "~s failed (because ~a)"
msgstr "~s a échoué (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1367
+#: src/scm/webid-oidc/errors.scm:1383
msgid ", "
msgstr ", "
-#: src/scm/webid-oidc/errors.scm:1369
+#: src/scm/webid-oidc/errors.scm:1385
#, scheme-format
msgid "no resource has been found to serve URI path ~s"
msgstr "aucune ressource n’a été trouvée pour servir le chemin d’URI ~s"
-#: src/scm/webid-oidc/errors.scm:1372
+#: src/scm/webid-oidc/errors.scm:1388
#, scheme-format
msgid "the resource kind ~s is absent for the resource at ~s"
msgstr "le type de ressource ~s est absent pour la ressource ~s"
-#: src/scm/webid-oidc/errors.scm:1375
+#: src/scm/webid-oidc/errors.scm:1391
#, scheme-format
msgid "no resource has been found to serve URI path ~s, but ~s exists"
msgstr ""
"aucune ressource n’a été trouvée pour servir le chemin d’URI ~s, mais ~s "
"existe"
-#: src/scm/webid-oidc/errors.scm:1378
+#: src/scm/webid-oidc/errors.scm:1394
msgid "the root storage cannot be deleted"
msgstr "le stockage racine ne peut pas être détruit"
-#: src/scm/webid-oidc/errors.scm:1380
+#: src/scm/webid-oidc/errors.scm:1396
#, scheme-format
msgid "the container ~s should be emptied before being deleted"
msgstr "le conteneur ~s doit être vidé avant d’être détruit"
-#: src/scm/webid-oidc/errors.scm:1383
+#: src/scm/webid-oidc/errors.scm:1399
#, scheme-format
msgid "the group ~s cannot be fetched (because ~a)"
msgstr "le groupe ~s n’a pas pu être récupéré (parce que ~a)"
-#: src/scm/webid-oidc/errors.scm:1387
+#: src/scm/webid-oidc/errors.scm:1403
#, scheme-format
msgid "the containment triples in the request to update ~s are not up to date"
msgstr ""
"les triplets de contention dans la requête pour changer ~s ne sont pas à jour"
-#: src/scm/webid-oidc/errors.scm:1390
+#: src/scm/webid-oidc/errors.scm:1406
#, scheme-format
msgid "the server cannot process resources with the ~s content-type"
msgstr ""
"le serveur ne peut pas traiter des ressources avec le type de contenu ~s"
-#: src/scm/webid-oidc/errors.scm:1393
+#: src/scm/webid-oidc/errors.scm:1409
#, scheme-format
msgid ""
"the client wants to create a resource at ~s, which is reserved for an "
@@ -724,7 +724,7 @@ msgstr ""
"le client veut créer une ressource en tant que ~s, qui est réservé pour une "
"ressource auxiliare"
-#: src/scm/webid-oidc/errors.scm:1396
+#: src/scm/webid-oidc/errors.scm:1412
#, scheme-format
msgid ""
"the operation on ~s by ~a is refused, because it’s not by ~s and the access "
@@ -733,11 +733,11 @@ msgstr ""
"l’opération sur ~s par ~a est refusée, parce que ce n’est pas ~s et le "
"contrôle d’accès refuse le mode d’opération suivant : ~s"
-#: src/scm/webid-oidc/errors.scm:1400
+#: src/scm/webid-oidc/errors.scm:1416
msgid "an anonymous user"
msgstr "un utilisateur anonyme"
-#: src/scm/webid-oidc/errors.scm:1405
+#: src/scm/webid-oidc/errors.scm:1421
#, scheme-format
msgid ""
"the client precondition failed for ~s: it allows for ~s, forbids ~s, but the "
@@ -746,7 +746,7 @@ msgstr ""
"la précondition du client a échoué pour ~s : elle autorise ~s, interdit ~s, "
"mais la ressource a une représentation ~s"
-#: src/scm/webid-oidc/errors.scm:1407
+#: src/scm/webid-oidc/errors.scm:1423
#, scheme-format
msgid ""
"the client precondition failed for ~s: it allows for ~s, forbids ~s, but the "
@@ -755,137 +755,138 @@ msgstr ""
"la précondition du client a échoué pour ~s : elle autorise ~s, interdit ~s, "
"mais la ressource n’a pas de représentation"
-#: src/scm/webid-oidc/errors.scm:1412
+#: src/scm/webid-oidc/errors.scm:1428
msgid "that’s it"
msgstr "c’est tout"
-#: src/scm/webid-oidc/errors.scm:1416
+#: src/scm/webid-oidc/errors.scm:1432
#, scheme-format
msgid "~a and ~a"
msgstr "~a et ~a"
-#: src/scm/webid-oidc/errors.scm:1419
+#: src/scm/webid-oidc/errors.scm:1435
#, scheme-format
msgid "~a, ~a"
msgstr "~a, ~a"
-#: src/scm/webid-oidc/errors.scm:1423
+#: src/scm/webid-oidc/errors.scm:1439
#, scheme-format
msgid "the signature ~a does not match key ~s with payload ~a"
msgstr "la signature ~a ne correspond pas à la clé ~s avec le contenu ~a"
-#: src/scm/webid-oidc/errors.scm:1426
+#: src/scm/webid-oidc/errors.scm:1442
msgid "there is an undefined variable"
msgstr "il y a une variable non définie"
-#: src/scm/webid-oidc/errors.scm:1428
+#: src/scm/webid-oidc/errors.scm:1444
#, scheme-format
msgid "the origin is ~a"
msgstr "l’origine est ~a"
-#: src/scm/webid-oidc/errors.scm:1431
+#: src/scm/webid-oidc/errors.scm:1447
#, scheme-format
msgid "a message is attached: ~a"
msgstr "un message est attaché : ~a"
-#: src/scm/webid-oidc/errors.scm:1434
+#: src/scm/webid-oidc/errors.scm:1450
#, scheme-format
msgid "the values ~s are problematic"
msgstr "les valeurs ~s sont problématiques"
-#: src/scm/webid-oidc/errors.scm:1437
-msgid "there is a kind and args"
-msgstr "il y a un type et des arguments"
+#: src/scm/webid-oidc/errors.scm:1453
+#, scheme-format
+msgid "there is a kind (~s) and args ~s"
+msgstr "il y a un type (~s) et des arguments ~s"
-#: src/scm/webid-oidc/errors.scm:1439
+#: src/scm/webid-oidc/errors.scm:1456
msgid "there is an assertion failure"
msgstr "il y a un échec d’assertion"
-#: src/scm/webid-oidc/errors.scm:1441
+#: src/scm/webid-oidc/errors.scm:1458
#, scheme-format
msgid "the program quits with code ~a"
msgstr "le programme quitte avec le code ~a"
-#: src/scm/webid-oidc/errors.scm:1444
+#: src/scm/webid-oidc/errors.scm:1461
msgid "the program cannot recover from this exception"
msgstr "le programme ne peut pas récupérer après cette exception"
-#: src/scm/webid-oidc/errors.scm:1446
+#: src/scm/webid-oidc/errors.scm:1463
msgid "there is an external error"
msgstr "il y a une erreur externe"
-#: src/scm/webid-oidc/errors.scm:1448
+#: src/scm/webid-oidc/errors.scm:1465
msgid "there is an error"
msgstr "il y a une erreur"
-#: src/scm/webid-oidc/errors.scm:1450
+#: src/scm/webid-oidc/errors.scm:1467
#, scheme-format
msgid "Unhandled exception type ~a."
msgstr "Type d’exception non pris en charge ~a."
-#: src/scm/webid-oidc/identity-provider.scm:54
+#: src/scm/webid-oidc/identity-provider.scm:70
msgid "Warning: generating a new key pair."
msgstr "Attention : génération d'une nouvelle paire de clé."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:29
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:45
msgid "xml-lang|en"
msgstr "fr"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:45
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:61
msgid "page-title|Authorization"
msgstr "Autorisation"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:50
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:66
msgid "Authorize this anonymous application?"
msgstr "Autoriser cette application anonyme ?"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:51
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:67
#, scheme-format
msgid "Authorize <a href=~s>~a</a>?"
msgstr "Autoriser <a href=~s>~a</a> ?"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:53
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:69
msgid "Do you want to authorize this application to represent you?"
msgstr "Voulez-vous autoriser cette application à vous représenter ?"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:63
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:79
msgid "Please retry your password:"
msgstr "Veuillez réessayer votre mot de passe :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:64
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:80
msgid "Please enter your password:"
msgstr "Veuillez entrer votre mot de passe :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:69
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:85
msgid "Allow"
msgstr "Autoriser"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:75
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:91
msgid "Bad request"
msgstr "Requête invalide"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:80
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:96
msgid "The application did not set the <emph>client_id</emph> parameter."
msgstr "L'application n'a pas spécifié le paramètre <emph>client_id</emph>."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:85
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:101
msgid "The application did not set the <emph>redirect_uri</emph> parameter."
msgstr "L'application n'a pas spécifié le paramètre <emph>redirect_uri</emph>."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:98
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:114
#, scheme-format
msgid "the value ~s is not a base64 string."
msgstr "la valeur ~s n’est pas une chaîne base64."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:101
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:117
msgid "the following value is not JSON:"
msgstr "la valeur suivante n’est pas du JSON :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:104
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:120
msgid "the following value is not Turtle:"
msgstr "la valeur suivante n’est pas du Turtle :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:107
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:123
#, scheme-format
msgid ""
"the server request unexpectedly failed with code ~a and reason phrase ~s."
@@ -893,58 +894,58 @@ msgstr ""
"la requête au serveur a échoué de façon inattendue avec un code ~a et une "
"raison ~s."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:112
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:128
#, scheme-format
msgid "the header ~a should not have the value ~s.\n"
msgstr "l’en-tête ~a ne devrait pas avoir la valeur ~s.\n"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:114
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:130
#, scheme-format
msgid "the header ~a should be present."
msgstr "l’en-tête ~a devrait être présent."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:118
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:134
msgid "the server response wasn’t expected:"
msgstr "la réponse du serveur est inattendue :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:127
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:143
#, scheme-format
msgid "the client_id field is incorrect: ~s"
msgstr "le champ client_id est incorrect : ~s"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:128
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:144
msgid "the client_id field is missing"
msgstr "le champ client_id est manquant"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:137
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:153
#, scheme-format
msgid "I could not fetch a RDF graph at ~a;"
msgstr "je n’ai pas pu récupérer de graphe RDF à ~a;"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:141
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:157
msgid "this is not a client manifest:"
msgstr "ceci n’est pas un manifeste client :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:146
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:162
#, scheme-format
msgid "the manifest does not authorize redirection URI ~a:"
msgstr "le manifeste n’autorise pas l’URI de redirection ~a :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:151
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:167
#, scheme-format
msgid "the client manifest at ~a is advertised for ~a;"
msgstr "le manifeste client ~a est publié pour ~a ;"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:156
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:172
#, scheme-format
msgid "I could not fetch the client manifest of ~a;"
msgstr "je n’ai pas pu récupérer le manifeste client de ~a ;"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:161
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:177
msgid "I could not issue an authorization code for you;"
msgstr "je n’ai pas pu émettre un code d’autorisation pour vous ;"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:169
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:185
msgid ""
"The application you are trying to authorize behaved unexpectedly. Here is "
"the explanation of the error:"
@@ -952,11 +953,11 @@ msgstr ""
"L’application que vous essayez d’autoriser se comporte de façon inattendue. "
"Ci-après une explication de l’erreur :"
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:178
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:194
msgid "Redirecting..."
msgstr "Redirection..."
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:183
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:199
#, scheme-format
msgid ""
"<a href=~s>~a</a> can now log in on your behalf. You still need to adjust "
@@ -965,96 +966,126 @@ msgstr ""
"<a href=~s>~a</a> peut maintenant s'identifier en votre nom. Vous devez "
"toujours ajuster ses permissions."
-#: src/scm/webid-oidc/resource-server.scm:75
+#: src/scm/webid-oidc/resource-server.scm:91
#, scheme-format
msgid "~a: authentication failure: ~a\n"
msgstr "~a : échec d’authentificationn : ~a\n"
-#: src/scm/webid-oidc/resource-server.scm:204
+#: src/scm/webid-oidc/resource-server.scm:220
#, scheme-format
msgid "Warning: ~a\n"
msgstr "Avertissement : ~a\n"
-#: src/scm/webid-oidc/resource-server.scm:207
+#: src/scm/webid-oidc/resource-server.scm:223
#, scheme-format
msgid "Error: ~a\n"
msgstr "Erreur : ~a\n"
-#: src/scm/webid-oidc/hello-world.scm:31 src/scm/webid-oidc/example-app.scm:100
-#: src/scm/webid-oidc/program.scm:81
+#: src/scm/webid-oidc/hello-world.scm:47 src/scm/webid-oidc/example-app.scm:116
+#: src/scm/webid-oidc/program.scm:111
msgid "command-line|version"
msgstr "version"
-#: src/scm/webid-oidc/hello-world.scm:33 src/scm/webid-oidc/example-app.scm:102
+#: src/scm/webid-oidc/hello-world.scm:49 src/scm/webid-oidc/program.scm:113
+msgid "command-line|complete-corresponding-source"
+msgstr "code-source-correspondant-complet"
+
+#: src/scm/webid-oidc/hello-world.scm:51 src/scm/webid-oidc/example-app.scm:118
msgid "comand-line|help"
msgstr "aide"
-#: src/scm/webid-oidc/hello-world.scm:35
+#: src/scm/webid-oidc/hello-world.scm:53
msgid "comand-line|port"
msgstr "port"
-#: src/scm/webid-oidc/hello-world.scm:44
+#: src/scm/webid-oidc/hello-world.scm:63
#, scheme-format
msgid ""
"~a [OPTIONS]...\n"
"\n"
"Display your identity contained in the XXX-Agent header.\n"
"\n"
+"This program is covered by the GNU Affero GPL, version 3 or\n"
+"later. This license requires you to provide a way for any user over\n"
+"the network to download the complete corresponding source code (with\n"
+"your modifications) at no cost. The server adds a \"Source:\" header\n"
+"to all responses.\n"
+"\n"
"Options:\n"
+" -S MEANS, --~a=MEANS:\n"
+" specify a way to download the complete corresponding source\n"
+" code. For instance, this would be an URI pointing to a tarball.\n"
" -h, --~a:\n"
" display this help message and exit.\n"
" -v, --~a:\n"
" display the version information (~a) and exit.\n"
-" -p PORT, --port=~a:\n"
+" -p PORT, --~a=PORT:\n"
" set the port to bind.\n"
msgstr ""
"~a [OPTIONS]…\n"
"\n"
-"Affiche votre identité contenue dans l’en-tête XXX-Agent.\n"
+"Affiche l’identité contenue dans l’en-tête XXX-Agent.\n"
+"\n"
+"Ce programme est couvert par la GNU Affero GPL, version 3 ou\n"
+"ultérieure. Cette license impose que vous fournissiez un moyen à tout\n"
+"utilisateur sur le réseau de télécharger le code source correspondant\n"
+"complet (avec vos modifications) gratuitement. Le serveur ajoute un\n"
+"en-tête « Source: » à toutes les réponses.\n"
"\n"
"Options :\n"
+" -S MOYEN, --~a=MOYEN :\n"
+" spécifie un moyen de télécharger le code source correspondant\n"
+" complet. Par exemple. ce pourrait être un URI indiquant une\n"
+" archive de code source.\n"
" -h, --~a :\n"
" affiche ce message d’aide et quitte.\n"
" -v, --~a :\n"
-" affiche le numéro de version (~a) et quitte.\n"
-" -p PORT, --~a=8080 :\n"
+" affiche l’information de version (~a) et quitte.\n"
+" -p PORT, --~a=PORT :\n"
" définit le port à lier.\n"
-#: src/scm/webid-oidc/hello-world.scm:61 src/scm/webid-oidc/example-app.scm:143
-#: src/scm/webid-oidc/program.scm:352
+#: src/scm/webid-oidc/hello-world.scm:90 src/scm/webid-oidc/example-app.scm:159
+#: src/scm/webid-oidc/program.scm:401
#, scheme-format
msgid "~a version ~a\n"
msgstr "~a version ~a\n"
-#: src/scm/webid-oidc/hello-world.scm:72
+#: src/scm/webid-oidc/hello-world.scm:99 src/scm/webid-oidc/program.scm:409
+msgid ""
+"You are legally required to link to the complete corresponding source code.\n"
+msgstr ""
+"Vous êtes légalement tenu de fournir un lien vers le code source "
+"correspondant.\n"
+
+#: src/scm/webid-oidc/hello-world.scm:108
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/example-app.scm:35
+#: src/scm/webid-oidc/example-app.scm:51
#, scheme-format
msgid "~a.\t~a, certified by ~a;\n"
msgstr "~a.\t~a, certifié par ~a ;\n"
-#: src/scm/webid-oidc/example-app.scm:46
+#: src/scm/webid-oidc/example-app.scm:62
#, scheme-format
msgid "~a – ~a\n"
msgstr "~a – ~a\n"
-#: src/scm/webid-oidc/example-app.scm:65
+#: src/scm/webid-oidc/example-app.scm:81
#, scheme-format
msgid "I’m expecting a number between ~a and ~a.\n"
msgstr "J’attends un nombre entre ~a et ~a.\n"
-#: src/scm/webid-oidc/example-app.scm:72
+#: src/scm/webid-oidc/example-app.scm:88
msgid "Please enter an URI to GET: "
msgstr "Veuillez entrer un URI à requêter avec GET :"
-#: src/scm/webid-oidc/example-app.scm:91
+#: src/scm/webid-oidc/example-app.scm:107
#, scheme-format
msgid "Sending a request: ~s\n"
msgstr "Envoi d’une requête : ~s\n"
-#: src/scm/webid-oidc/example-app.scm:110
+#: src/scm/webid-oidc/example-app.scm:126
#, scheme-format
msgid ""
"Usage: ~a [OPTIONS]...\n"
@@ -1107,30 +1138,30 @@ msgstr ""
"Si vous trouvez une erreur dans le programme, envoyez-en un rapport à\n"
"~a.\n"
-#: src/scm/webid-oidc/example-app.scm:147
+#: src/scm/webid-oidc/example-app.scm:163
msgid "First, let’s log in. Here are your options:\n"
msgstr "En premier lieu, authentifions-nous. Voici vos options :\n"
-#: src/scm/webid-oidc/example-app.scm:149
+#: src/scm/webid-oidc/example-app.scm:165
msgid "0.\tLog in with a different identity.\n"
msgstr "0.\tS’authentifier avec une identité différente.\n"
-#: src/scm/webid-oidc/example-app.scm:154
-#: src/scm/webid-oidc/example-app.scm:173
+#: src/scm/webid-oidc/example-app.scm:170
+#: src/scm/webid-oidc/example-app.scm:189
msgid "Please indicate your choice number: "
msgstr "Veuillez indiquer votre choix de numéro : "
-#: src/scm/webid-oidc/example-app.scm:159
+#: src/scm/webid-oidc/example-app.scm:175
msgid "Please enter your webid, or identity server: "
msgstr "Veuillez entrer votre webid, ou serveur d’identité : "
-#: src/scm/webid-oidc/example-app.scm:169
+#: src/scm/webid-oidc/example-app.scm:185
msgid "There are different possible identity providers for your webid:\n"
msgstr ""
"Il y a différents fournisseurs d’identité possibles pour votre\n"
"webid :\n"
-#: src/scm/webid-oidc/example-app.scm:176
+#: src/scm/webid-oidc/example-app.scm:192
#, scheme-format
msgid ""
"Please visit the following URI with a web browser:\n"
@@ -1139,11 +1170,11 @@ msgstr ""
"Veuillez accéder à cet URI avec un navigateur web :\n"
"~a\n"
-#: src/scm/webid-oidc/example-app.scm:178
+#: src/scm/webid-oidc/example-app.scm:194
msgid "Please paste your authorization code: "
msgstr "Veuillez coller votre code d’autorisation : "
-#: src/scm/webid-oidc/example-app.scm:189
+#: src/scm/webid-oidc/example-app.scm:205
#, scheme-format
msgid ""
"Log in success. Keep this identity token for yourself:\n"
@@ -1172,17 +1203,17 @@ msgstr ""
"\n"
"~a\n"
-#: src/scm/webid-oidc/example-app.scm:210
+#: src/scm/webid-oidc/example-app.scm:226
#, scheme-format
msgid "There was an error: ~a\n"
msgstr "Il y a eu une erreur : ~a\n"
-#: src/scm/webid-oidc/program.scm:53
+#: src/scm/webid-oidc/program.scm:72
#, scheme-format
msgid "~a: Internal server error: ~a\n"
msgstr "~a : Erreur interne du serveur : ~a\n"
-#: src/scm/webid-oidc/program.scm:64
+#: src/scm/webid-oidc/program.scm:84
#, scheme-format
msgid ""
"The client locale ~s can’t be approximated by system locale ~s (because ~a), "
@@ -1191,81 +1222,87 @@ msgstr ""
"La locale du client ~s ne peut pas être approchée par la locale système ~s "
"(parce que ~a), on utilise C.\n"
-#: src/scm/webid-oidc/program.scm:83
+#: src/scm/webid-oidc/program.scm:115
msgid "command-line|help"
msgstr "aide"
-#: src/scm/webid-oidc/program.scm:85
+#: src/scm/webid-oidc/program.scm:117
msgid "command-line|server|port"
msgstr "port"
-#: src/scm/webid-oidc/program.scm:87
+#: src/scm/webid-oidc/program.scm:119
msgid "command-line|server|server-name"
msgstr "nom-du-serveur"
-#: src/scm/webid-oidc/program.scm:89
+#: src/scm/webid-oidc/program.scm:121
msgid "command-line|server|reverse-proxy|backend-uri"
msgstr "uri-arrière-plan"
-#: src/scm/webid-oidc/program.scm:91
+#: src/scm/webid-oidc/program.scm:123
msgid "command-line|server|reverse-proxy|header"
msgstr "en-tête"
-#: src/scm/webid-oidc/program.scm:93
+#: src/scm/webid-oidc/program.scm:125
msgid "command-line|server|issuer|key-file"
msgstr "fichier-clé"
-#: src/scm/webid-oidc/program.scm:95
+#: src/scm/webid-oidc/program.scm:127
msgid "command-line|server|issuer|subject"
msgstr "sujet"
-#: src/scm/webid-oidc/program.scm:97
+#: src/scm/webid-oidc/program.scm:129
msgid "command-line|server|issuer|password"
msgstr "mot-de-passe"
-#: src/scm/webid-oidc/program.scm:99
+#: src/scm/webid-oidc/program.scm:131
msgid "command-line|server|issuer|jwks-uri"
msgstr "uri-jwks"
-#: src/scm/webid-oidc/program.scm:101
+#: src/scm/webid-oidc/program.scm:133
msgid "command-line|server|issuer|authorization-endpoint-uri"
msgstr "uri-terminal-autorisation"
-#: src/scm/webid-oidc/program.scm:103
+#: src/scm/webid-oidc/program.scm:135
msgid "command-line|server|issuer|token-endpoint-uri"
msgstr "uri-terminal-jeton"
-#: src/scm/webid-oidc/program.scm:105
+#: src/scm/webid-oidc/program.scm:137
msgid "command-line|server|client-id"
msgstr "id-client"
-#: src/scm/webid-oidc/program.scm:107
+#: src/scm/webid-oidc/program.scm:139
msgid "command-line|server|redirect-uri"
msgstr "uri-redirection"
-#: src/scm/webid-oidc/program.scm:109
+#: src/scm/webid-oidc/program.scm:141
msgid "command-line|server|client-name"
msgstr "nom-client"
-#: src/scm/webid-oidc/program.scm:111
+#: src/scm/webid-oidc/program.scm:143
msgid "command-line|server|client-uri"
msgstr "uri-client"
-#: src/scm/webid-oidc/program.scm:113
+#: src/scm/webid-oidc/program.scm:145
msgid "command-line|log-file"
msgstr "fichier-journal"
-#: src/scm/webid-oidc/program.scm:115
+#: src/scm/webid-oidc/program.scm:147
msgid "command-line|error-file"
msgstr "fichier-erreur"
-#: src/scm/webid-oidc/program.scm:139
+#: src/scm/webid-oidc/program.scm:172
#, scheme-format
msgid ""
"Usage: ~a COMMAND [OPTIONS]...\n"
"\n"
"Run the webid-oidc COMMAND.\n"
"\n"
+"This program is covered by the GNU Affero GPL, version 3 or\n"
+"later. This license requires you to provide a way for any user over\n"
+"the network to download the complete corresponding source code (with\n"
+"your modifications) at no cost. The server adds a \"Source:\" header\n"
+"to all responses.\n"
+"\n"
"Available commands:\n"
" ~a:\n"
" run an authenticating reverse proxy.\n"
@@ -1278,6 +1315,9 @@ msgid ""
" facility.\n"
"\n"
"General options:\n"
+" -S MEANS, --~a=MEANS:\n"
+" specify a way to download the complete corresponding source\n"
+" code. For instance, this would be an URI pointing to a tarball.\n"
" -h, --~a:\n"
" display a short help message and exit.\n"
" -v, --~a:\n"
@@ -1360,6 +1400,7 @@ msgid ""
"from this reverse proxy.\n"
"\n"
" ~a ~a \\\n"
+" --~a 'https://data.provider.com/server-source-code.tar.gz' \\\n"
" --~a 8080 \\\n"
" --~a 'https://data.provider.com' \\\n"
" --~a 'https://private.data.provider.com' \\\n"
@@ -1375,6 +1416,8 @@ msgid ""
" export XDG_DATA_HOME=/var/lib\n"
" export XDG_CACHE_HOME=/var/cache\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu' \\\n"
" --~a '/var/lib/webid-oidc/issuer/key.jwk' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/profile/card#me' \\\n"
@@ -1389,6 +1432,8 @@ msgid ""
"webid-oidc-demo.planete-kraus.eu is configured this way:\n"
"\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/example-application#id' "
"\\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/authorized' \\\n"
@@ -1403,6 +1448,12 @@ msgstr ""
"\n"
"Exécute la COMMANDE de webid-oidc.\n"
"\n"
+"Ce programme est couvert par la GNU Affero GPL, version 3 ou\n"
+"ultérieure. Cette license impose que vous fournissiez un moyen pour\n"
+"que tout utilisateur sur le réseau puisse télécharger gratuitement le\n"
+"code source correspondant complet (avec vos modifications). Le serveur\n"
+"ajoute un en-tête « Source: » à toutes les réponses.\n"
+"\n"
"Commandes disponibles :\n"
" ~a :\n"
" exécute le proxy inverse authentifiant.\n"
@@ -1415,6 +1466,10 @@ msgstr ""
" système de stockage des ressources.\n"
"\n"
"Options générales :\n"
+" -S MOYEN, --~a=MOYEN :\n"
+" spécifie un moyen de télécharger le code source correspondant\n"
+" complet. Par exemple, ce pourrait être un URI vers une archive\n"
+" de code source.\n"
" -h, --~a :\n"
" affiche un court message d’aide et quitte.\n"
" -v, --~a :\n"
@@ -1501,6 +1556,7 @@ msgstr ""
"\n"
" export LANG=fr_FR.UTF-8\n"
" ~a ~a \\\n"
+" --~a 'https://donnees.fournisseur.com/code-source-serveur.tar.gz \\\n"
" --~a 8080 \\\n"
" --~a 'https://donnees.fournisseur.com' \\\n"
" --~a 'https://prive.donnees.fournisseur.com' \\\n"
@@ -1517,6 +1573,8 @@ msgstr ""
" export XDG_DATA_HOME=/var/lib\n"
" export XDG_CACHE_HOME=/var/cache\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu' \\\n"
" --~a '/var/lib/webid-oidc/issuer/key.jwk' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/profile/card#me' \\\n"
@@ -1532,6 +1590,8 @@ msgstr ""
"\n"
" export LANG=fr_FR.UTF-8\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/example-application#id' "
"\\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/authorized' \\\n"
@@ -1542,57 +1602,57 @@ msgstr ""
"Si vous trouvez une erreur dans le programme, envoyez-en un rapport à\n"
"~a.\n"
-#: src/scm/webid-oidc/program.scm:277 src/scm/webid-oidc/program.scm:334
-#: src/scm/webid-oidc/program.scm:435
+#: src/scm/webid-oidc/program.scm:322 src/scm/webid-oidc/program.scm:380
+#: src/scm/webid-oidc/program.scm:491
msgid "command-line|command|reverse-proxy"
msgstr "proxy-inversé"
-#: src/scm/webid-oidc/program.scm:278 src/scm/webid-oidc/program.scm:340
-#: src/scm/webid-oidc/program.scm:453
+#: src/scm/webid-oidc/program.scm:323 src/scm/webid-oidc/program.scm:387
+#: src/scm/webid-oidc/program.scm:511
msgid "command-line|command|identity-provider"
msgstr "fournisseur-identité"
-#: src/scm/webid-oidc/program.scm:279 src/scm/webid-oidc/program.scm:346
-#: src/scm/webid-oidc/program.scm:494
+#: src/scm/webid-oidc/program.scm:324 src/scm/webid-oidc/program.scm:394
+#: src/scm/webid-oidc/program.scm:552
msgid "command-line|command|client-service"
msgstr "service-client"
-#: src/scm/webid-oidc/program.scm:280 src/scm/webid-oidc/program.scm:520
+#: src/scm/webid-oidc/program.scm:325 src/scm/webid-oidc/program.scm:578
msgid "command-line|command|server"
msgstr "serveur"
-#: src/scm/webid-oidc/program.scm:315 src/scm/webid-oidc/program.scm:319
-#: src/scm/webid-oidc/program.scm:323 src/scm/webid-oidc/program.scm:327
+#: src/scm/webid-oidc/program.scm:361 src/scm/webid-oidc/program.scm:365
+#: src/scm/webid-oidc/program.scm:369 src/scm/webid-oidc/program.scm:373
#, scheme-format
msgid "an environment variable| It is currently set to ~s."
msgstr " Elle vaut actuellement ~s."
-#: src/scm/webid-oidc/program.scm:317 src/scm/webid-oidc/program.scm:321
-#: src/scm/webid-oidc/program.scm:325 src/scm/webid-oidc/program.scm:329
+#: src/scm/webid-oidc/program.scm:363 src/scm/webid-oidc/program.scm:367
+#: src/scm/webid-oidc/program.scm:371 src/scm/webid-oidc/program.scm:375
msgid "an environment variable| It is currently unset."
msgstr " Elle n’est actuellement pas définie."
-#: src/scm/webid-oidc/program.scm:360
+#: src/scm/webid-oidc/program.scm:416
#, scheme-format
msgid "The --~a argument must be a number, not ~s.\n"
msgstr "L’argument de --~a doit être un nombre, pas ~s.\n"
-#: src/scm/webid-oidc/program.scm:366
+#: src/scm/webid-oidc/program.scm:422
#, scheme-format
msgid "The --~a argument must be an integer, not ~s.\n"
msgstr "L’argument de --~a doit être un entier, pas ~s.\n"
-#: src/scm/webid-oidc/program.scm:372
+#: src/scm/webid-oidc/program.scm:428
#, scheme-format
msgid "The --~a argument must be positive, ~s is invalid.\n"
msgstr "L’argument de --~a doit être positif, ~s est invalide.\n"
-#: src/scm/webid-oidc/program.scm:377
+#: src/scm/webid-oidc/program.scm:433
#, scheme-format
msgid "The --~a argument must be less than 65536, ~s is invalid.\n"
msgstr "L’argument de --~a doit être inférieur à 65536, ~s est invalide.\n"
-#: src/scm/webid-oidc/program.scm:419
+#: src/scm/webid-oidc/program.scm:475
#, scheme-format
msgid ""
"Usage: ~a COMMAND [OPTIONS]...\n"
@@ -1601,18 +1661,18 @@ msgstr ""
"Utilisation : ~a COMMANDE [OPTIONS]...\n"
"Voir --~a (-h).\n"
-#: src/scm/webid-oidc/program.scm:438 src/scm/webid-oidc/program.scm:456
-#: src/scm/webid-oidc/program.scm:522
+#: src/scm/webid-oidc/program.scm:494 src/scm/webid-oidc/program.scm:514
+#: src/scm/webid-oidc/program.scm:580
#, scheme-format
msgid "You must pass --~a to set the server name.\n"
msgstr "Vous devez passer --~a pour définir le nom du serveur.\n"
-#: src/scm/webid-oidc/program.scm:442
+#: src/scm/webid-oidc/program.scm:498
#, scheme-format
msgid "You must pass --~a to set the backend URI.\n"
msgstr "Vous devez passer --~a pour définir l'URI du service d’arrière-plan.\n"
-#: src/scm/webid-oidc/program.scm:460 src/scm/webid-oidc/program.scm:526
+#: src/scm/webid-oidc/program.scm:518 src/scm/webid-oidc/program.scm:584
#, scheme-format
msgid ""
"You must pass --~a to set the file where to store the identity provider "
@@ -1621,62 +1681,88 @@ msgstr ""
"Vous devez passer --~a pour définir le nom du fichier pour sauvegarder\n"
"la clé du fournisseur d’identité.\n"
-#: src/scm/webid-oidc/program.scm:464 src/scm/webid-oidc/program.scm:530
+#: src/scm/webid-oidc/program.scm:522 src/scm/webid-oidc/program.scm:588
#, scheme-format
msgid "You must pass --~a to set the subject of the identity provider.\n"
msgstr ""
"Vous devez passer --~a pour définir le sujet du fournisseur d’identité.\n"
-#: src/scm/webid-oidc/program.scm:468 src/scm/webid-oidc/program.scm:534
+#: src/scm/webid-oidc/program.scm:526 src/scm/webid-oidc/program.scm:592
#, scheme-format
msgid "You must pass --~a to set the subject’s password.\n"
msgstr "Vous devez passer --~a pour définir le mot de passe du sujet.\n"
-#: src/scm/webid-oidc/program.scm:472 src/scm/webid-oidc/program.scm:538
+#: src/scm/webid-oidc/program.scm:530 src/scm/webid-oidc/program.scm:596
#, scheme-format
msgid "You must pass --~a to set the JWKS URI.\n"
msgstr "Vous devez passer --~a pour définir l'URI du JWKS.\n"
-#: src/scm/webid-oidc/program.scm:476 src/scm/webid-oidc/program.scm:542
+#: src/scm/webid-oidc/program.scm:534 src/scm/webid-oidc/program.scm:600
#, scheme-format
msgid "You must pass --~a to set the authorization endpoint URI.\n"
msgstr ""
"Vous devez passer --~a pour définir l'URI du terminal d'autorisation.\n"
-#: src/scm/webid-oidc/program.scm:480 src/scm/webid-oidc/program.scm:546
+#: src/scm/webid-oidc/program.scm:538 src/scm/webid-oidc/program.scm:604
#, scheme-format
msgid "You must pass --~a to set the token endpoint URI.\n"
msgstr "Vous devez passer --~a pour définir l'URI du terminal de jeton.\n"
-#: src/scm/webid-oidc/program.scm:497
+#: src/scm/webid-oidc/program.scm:555
#, scheme-format
msgid "You must pass --~a to set the application web ID.\n"
msgstr ""
"Vous devez passer --~a pour définir l'identifiant web de l’application.\n"
-#: src/scm/webid-oidc/program.scm:501
+#: src/scm/webid-oidc/program.scm:559
#, scheme-format
msgid "You must pass --~a to set the redirection URI.\n"
msgstr "Vous devez passer --~a pour définir l'URI de redirection.\n"
-#: src/scm/webid-oidc/program.scm:505
+#: src/scm/webid-oidc/program.scm:563
#, scheme-format
msgid "You must pass --~a to set the informative client name.\n"
msgstr ""
"Vous devez passer --~a pour donner un nom pour l’application à titre "
"informatif.\n"
-#: src/scm/webid-oidc/program.scm:509
+#: src/scm/webid-oidc/program.scm:567
#, scheme-format
msgid "You must pass --~a to set the informative client URI.\n"
msgstr ""
"Vous devez passer --~a pour définir l'URI du client, à titre informatif.\n"
-#: src/scm/webid-oidc/program.scm:589
+#: src/scm/webid-oidc/program.scm:649
#, scheme-format
msgid "Unknown command ~s\n"
msgstr "Commande inconnue ~s\n"
+#, scheme-format
+#~ msgid ""
+#~ "~a [OPTIONS]...\n"
+#~ "\n"
+#~ "Display your identity contained in the XXX-Agent header.\n"
+#~ "\n"
+#~ "Options:\n"
+#~ " -h, --~a:\n"
+#~ " display this help message and exit.\n"
+#~ " -v, --~a:\n"
+#~ " display the version information (~a) and exit.\n"
+#~ " -p PORT, --port=~a:\n"
+#~ " set the port to bind.\n"
+#~ msgstr ""
+#~ "~a [OPTIONS]…\n"
+#~ "\n"
+#~ "Affiche votre identité contenue dans l’en-tête XXX-Agent.\n"
+#~ "\n"
+#~ "Options :\n"
+#~ " -h, --~a :\n"
+#~ " affiche ce message d’aide et quitte.\n"
+#~ " -v, --~a :\n"
+#~ " affiche le numéro de version (~a) et quitte.\n"
+#~ " -p PORT, --~a=8080 :\n"
+#~ " définit le port à lier.\n"
+
#~ msgid "comand-line|log-file"
#~ msgstr "fichier-journal"
diff --git a/po/webid-oidc.pot b/po/webid-oidc.pot
index 800e63c..89b625c 100644
--- a/po/webid-oidc.pot
+++ b/po/webid-oidc.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: webid-oidc SNAPSHOT\n"
"Report-Msgid-Bugs-To: vivien@planete-kraus.eu\n"
-"POT-Creation-Date: 2021-06-28 22:58+0200\n"
+"POT-Creation-Date: 2021-07-01 16:40+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"
@@ -17,994 +17,1013 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/libwebidoidc.c:11
+#: src/libwebidoidc.c:29
msgid "This is the main function."
msgstr ""
-#: src/random/random.c:199
+#: src/random/random.c:217
#, c-format
msgid "Could not set the global random generator up.\n"
msgstr ""
-#: src/random/random.c:213 src/random/random.c:225 src/random/random.c:238
-#: src/random/random.c:249 src/random/random.c:260
+#: src/random/random.c:231 src/random/random.c:243 src/random/random.c:256
+#: src/random/random.c:267 src/random/random.c:278
#, c-format
msgid "Could not set the global random generator up: out of memory.\n"
msgstr ""
-#: src/random/random.c:270
+#: src/random/random.c:288
#, c-format
msgid ""
"Warning: could not open the seed file, maybe the parent directory is "
"missing...\n"
msgstr ""
-#: src/random/random.c:274
+#: src/random/random.c:292
#, c-format
msgid "Warning: could not create the cache directory '%s'.\n"
msgstr ""
-#: src/random/random.c:276
+#: src/random/random.c:294
msgid "when creating the cache directory"
msgstr ""
-#: src/random/random.c:282
+#: src/random/random.c:300
#, c-format
msgid "Warning: could not create the package cache directory '%s'.\n"
msgstr ""
-#: src/random/random.c:284
+#: src/random/random.c:302
msgid "when creating the package cache directory"
msgstr ""
-#: src/random/random.c:290
+#: src/random/random.c:308
#, c-format
msgid "Could not open the seed file '%s'.\n"
msgstr ""
-#: src/random/random.c:291
+#: src/random/random.c:309
msgid "when opening the seed file"
msgstr ""
-#: src/random/random.c:311
+#: src/random/random.c:329
#, c-format
msgid "Could not lock the seed file '%s'.\n"
msgstr ""
-#: src/random/random.c:313
+#: src/random/random.c:331
msgid "when locking the seed file"
msgstr ""
-#: src/random/random.c:327
+#: src/random/random.c:345
#, c-format
msgid ""
"Warning: the seed file '%s' is too short. This weakens the random number "
"generator. Please write more random data in it.\n"
msgstr ""
-#: src/random/random.c:344
+#: src/random/random.c:362
#, c-format
msgid "Could not update the seed file '%s'.\n"
msgstr ""
-#: src/random/random.c:345
+#: src/random/random.c:363
msgid "when rewinding the seed file"
msgstr ""
-#: src/random/random.c:377
+#: src/random/random.c:395
#, c-format
msgid "Could not unlock the seed file '%s'.\n"
msgstr ""
-#: src/random/random.c:379
+#: src/random/random.c:397
msgid "when unlocking the seed file"
msgstr ""
-#: src/random/random.c:407
+#: src/random/random.c:425
#, c-format
msgid "Could not set the thread-local random generator up.\n"
msgstr ""
-#: src/random/random.c:415
+#: src/random/random.c:433
#, c-format
msgid ""
"The random module has not been initialized. Please call "
"webid_oidc_random_init first.\n"
msgstr ""
-#: src/random/generate-random.c:29
+#: src/random/generate-random.c:47
#, c-format
msgid "Usage: generate-random [NUMBER OF BYTES]\n"
msgstr ""
-#: src/jwk/generate-key.c:34
+#: src/jwk/generate-key.c:52
#, c-format
msgid "Usage: generate-key [NUMBER OF BITS | CURVE]\n"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1031
+#: src/scm/webid-oidc/errors.scm:1047
msgid "that’s how it is"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1036
+#: src/scm/webid-oidc/errors.scm:1052
#, scheme-format
msgid "the value ~s is not a base64 string (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1039
+#: src/scm/webid-oidc/errors.scm:1055
#, scheme-format
msgid "the value ~s is not JSON (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1042
+#: src/scm/webid-oidc/errors.scm:1058
#, scheme-format
msgid "the value ~s is not Turtle (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1045
+#: src/scm/webid-oidc/errors.scm:1061
#, scheme-format
msgid "the value ~s does not identify an elleptic curve"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1050
+#: src/scm/webid-oidc/errors.scm:1066
#, scheme-format
msgid "the value ~s does not identify a JWK (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1052
+#: src/scm/webid-oidc/errors.scm:1068
#, scheme-format
msgid "the value ~s does not identify a JWK"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1057
+#: src/scm/webid-oidc/errors.scm:1073
#, scheme-format
msgid "the value ~s does not identify a public JWK (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1059
+#: src/scm/webid-oidc/errors.scm:1075
#, scheme-format
msgid "the value ~s does not identify a public JWK"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1064
+#: src/scm/webid-oidc/errors.scm:1080
#, scheme-format
msgid "the value ~s does not identify a private JWK (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1066
+#: src/scm/webid-oidc/errors.scm:1082
#, scheme-format
msgid "the value ~s does not identify a private JWK"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1071
+#: src/scm/webid-oidc/errors.scm:1087
#, scheme-format
msgid "the value ~s does not identify a JWKS (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1073
+#: src/scm/webid-oidc/errors.scm:1089
#, scheme-format
msgid "the value ~s does not identify a JWKS"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1076
+#: src/scm/webid-oidc/errors.scm:1092
#, scheme-format
msgid "the value ~s does not identify a hash algorithm"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1079
+#: src/scm/webid-oidc/errors.scm:1095
#, scheme-format
msgid "the value ~s is not an alist or misses key ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1082
+#: src/scm/webid-oidc/errors.scm:1098
#, scheme-format
msgid "the value ~s is not a JWS header (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1085
+#: src/scm/webid-oidc/errors.scm:1101
#, scheme-format
msgid "the value ~s is not a JWS payload (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1088
+#: src/scm/webid-oidc/errors.scm:1104
#, scheme-format
msgid "the value ~s is not a JWS (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1091
+#: src/scm/webid-oidc/errors.scm:1107
#, scheme-format
msgid "the string ~s cannot be split in 3 parts with ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1094
+#: src/scm/webid-oidc/errors.scm:1110
#, scheme-format
msgid ""
"all key candidates failed to verify signature ~s with algorithm ~s and "
"payload ~a (there were ~a: ~s)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1097
+#: src/scm/webid-oidc/errors.scm:1113
#, scheme-format
msgid "I cannot decode JWS ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1100
+#: src/scm/webid-oidc/errors.scm:1116
#, scheme-format
msgid "I cannot encode JWS ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1103
+#: src/scm/webid-oidc/errors.scm:1119
#, scheme-format
msgid ""
"the server request unexpectedly failed with code ~a and reason phrase ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1108
+#: src/scm/webid-oidc/errors.scm:1124
#, scheme-format
msgid "the header ~a should not have the value ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1110
+#: src/scm/webid-oidc/errors.scm:1126
#, scheme-format
msgid "the header ~a should be present"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1113
+#: src/scm/webid-oidc/errors.scm:1129
#, scheme-format
msgid "the server response wasn't expected: ~s (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1119
+#: src/scm/webid-oidc/errors.scm:1135
#, scheme-format
msgid "the value ~s is not an OIDC configuration (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1124
+#: src/scm/webid-oidc/errors.scm:1140
#, scheme-format
msgid "the webid field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1125
+#: src/scm/webid-oidc/errors.scm:1141
msgid "the webid field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1129
+#: src/scm/webid-oidc/errors.scm:1145
#, scheme-format
msgid "the sub field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1130
+#: src/scm/webid-oidc/errors.scm:1146
msgid "the sub field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1134
+#: src/scm/webid-oidc/errors.scm:1150
#, scheme-format
msgid "the iss field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1135
+#: src/scm/webid-oidc/errors.scm:1151
msgid "the iss field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1139
+#: src/scm/webid-oidc/errors.scm:1155
#, scheme-format
msgid "the aud field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1140
+#: src/scm/webid-oidc/errors.scm:1156
msgid "the aud field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1144
+#: src/scm/webid-oidc/errors.scm:1160
#, scheme-format
msgid "the iat field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1145
+#: src/scm/webid-oidc/errors.scm:1161
msgid "the iat field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1149
+#: src/scm/webid-oidc/errors.scm:1165
#, scheme-format
msgid "the exp field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1150
+#: src/scm/webid-oidc/errors.scm:1166
msgid "the exp field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1154
+#: src/scm/webid-oidc/errors.scm:1170
#, scheme-format
msgid "the cnf/jkt field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1155
+#: src/scm/webid-oidc/errors.scm:1171
msgid "the cnf/jkt field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1159
+#: src/scm/webid-oidc/errors.scm:1175
#, scheme-format
msgid "the client-id field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1160
+#: src/scm/webid-oidc/errors.scm:1176
msgid "the client-id field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1164
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:133
+#: src/scm/webid-oidc/errors.scm:1180
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:149
#, scheme-format
msgid "the redirect_uris field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1165
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:134
+#: src/scm/webid-oidc/errors.scm:1181
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:150
msgid "the redirect_uris field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1169
+#: src/scm/webid-oidc/errors.scm:1185
#, scheme-format
msgid "the typ field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1170
+#: src/scm/webid-oidc/errors.scm:1186
msgid "the typ field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1174
+#: src/scm/webid-oidc/errors.scm:1190
#, scheme-format
msgid "the jwk field is incorrect: ~s (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1176
+#: src/scm/webid-oidc/errors.scm:1192
msgid "the jwk field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1180
+#: src/scm/webid-oidc/errors.scm:1196
#, scheme-format
msgid "the jti field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1181
+#: src/scm/webid-oidc/errors.scm:1197
msgid "the jti field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1185
+#: src/scm/webid-oidc/errors.scm:1201
#, scheme-format
msgid "the nonce field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1186
+#: src/scm/webid-oidc/errors.scm:1202
msgid "the nonce field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1190
+#: src/scm/webid-oidc/errors.scm:1206
#, scheme-format
msgid "the htm field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1191
+#: src/scm/webid-oidc/errors.scm:1207
msgid "the htm field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1195
+#: src/scm/webid-oidc/errors.scm:1211
#, scheme-format
msgid "the htu field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1196
+#: src/scm/webid-oidc/errors.scm:1212
msgid "the htu field is missing"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1198
+#: src/scm/webid-oidc/errors.scm:1214
#, scheme-format
msgid "~s is not an access token (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1201
+#: src/scm/webid-oidc/errors.scm:1217
#, scheme-format
msgid "~s is not an access token header (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1204
+#: src/scm/webid-oidc/errors.scm:1220
#, scheme-format
msgid "~s is not an access token payload (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1207
+#: src/scm/webid-oidc/errors.scm:1223
#, scheme-format
msgid "~s is not a DPoP proof (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1210
+#: src/scm/webid-oidc/errors.scm:1226
#, scheme-format
msgid "~s is not a DPoP proof header (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1213
+#: src/scm/webid-oidc/errors.scm:1229
#, scheme-format
msgid "~s is not a DPoP proof payload (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1216
+#: src/scm/webid-oidc/errors.scm:1232
#, scheme-format
msgid "I cannot fetch the issuer configuration of ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1223
+#: src/scm/webid-oidc/errors.scm:1239
#, scheme-format
msgid "I cannot fetch the JWKS of ~a at ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1234
+#: src/scm/webid-oidc/errors.scm:1250
#, scheme-format
msgid "the HTTP method is signed for ~s, but ~s was requested"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1237
+#: src/scm/webid-oidc/errors.scm:1253
#, scheme-format
msgid "the HTTP uri is signed for ~a, but ~a was requested"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1240
+#: src/scm/webid-oidc/errors.scm:1256
#, scheme-format
msgid "the date is ~a, but the DPoP proof is signed in the future at ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1244
+#: src/scm/webid-oidc/errors.scm:1260
#, scheme-format
msgid "the date is ~a, but the DPoP proof was signed too long ago at ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1253
+#: src/scm/webid-oidc/errors.scm:1269
#, scheme-format
msgid "the key ~s does not hash to ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1255
+#: src/scm/webid-oidc/errors.scm:1271
#, scheme-format
msgid "the key confirmation of ~s failed (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1257
+#: src/scm/webid-oidc/errors.scm:1273
#, scheme-format
msgid "the key confirmation of ~s failed"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1259
+#: src/scm/webid-oidc/errors.scm:1275
#, scheme-format
msgid "the jti ~s has already been found (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1262
+#: src/scm/webid-oidc/errors.scm:1278
#, scheme-format
msgid "I cannot decode ~s as an access token (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1265
+#: src/scm/webid-oidc/errors.scm:1281
#, scheme-format
msgid "I cannot encode ~s as an access token with key ~s (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1268
+#: src/scm/webid-oidc/errors.scm:1284
#, scheme-format
msgid "I cannot decode ~s as a DPoP proof (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1271
+#: src/scm/webid-oidc/errors.scm:1287
#, scheme-format
msgid "I cannot encode ~s as a DPoP proof (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1274
+#: src/scm/webid-oidc/errors.scm:1290
#, scheme-format
msgid "I could not fetch a RDF graph at ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1277
+#: src/scm/webid-oidc/errors.scm:1293
#, scheme-format
msgid "~s is not a client manifest (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1280
+#: src/scm/webid-oidc/errors.scm:1296
#, scheme-format
msgid "~s does not authorize redirection URI ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1283
+#: src/scm/webid-oidc/errors.scm:1299
msgid "I cannot serve a public manifest"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1285
+#: src/scm/webid-oidc/errors.scm:1301
#, scheme-format
msgid "~a does not have a client manifest registration triple"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1288
+#: src/scm/webid-oidc/errors.scm:1304
#, scheme-format
msgid "the client manifest at ~a is advertised for ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1291
+#: src/scm/webid-oidc/errors.scm:1307
#, scheme-format
msgid "I could not fetch the client manifest of ~a (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1294
+#: src/scm/webid-oidc/errors.scm:1310
#, scheme-format
msgid "~s is not an authorization code (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1297
+#: src/scm/webid-oidc/errors.scm:1313
#, scheme-format
msgid "~s is not an authorization code header (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1300
+#: src/scm/webid-oidc/errors.scm:1316
#, scheme-format
msgid "~s is not an authorization code payload (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1303
+#: src/scm/webid-oidc/errors.scm:1319
#, scheme-format
msgid "the current time is ~a, and the authorization code expired at ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1307
+#: src/scm/webid-oidc/errors.scm:1323
#, scheme-format
msgid "I cannot decode ~s as an authorization code (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1310
+#: src/scm/webid-oidc/errors.scm:1326
#, scheme-format
msgid "I cannot encode ~s as an authorization code (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1313
+#: src/scm/webid-oidc/errors.scm:1329
#, scheme-format
msgid "there is no such refresh token as ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1316
+#: src/scm/webid-oidc/errors.scm:1332
#, scheme-format
msgid ""
"the refresh token is bound to a key confirmed as ~s, but it is used with key "
"~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1319
+#: src/scm/webid-oidc/errors.scm:1335
#, scheme-format
msgid "I cannot decode ~s as an ID token (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1322
+#: src/scm/webid-oidc/errors.scm:1338
#, scheme-format
msgid "I cannot encode ~s as an ID token (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1325
+#: src/scm/webid-oidc/errors.scm:1341
#, scheme-format
msgid "the grant type ~s is not supported"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1328
+#: src/scm/webid-oidc/errors.scm:1344
msgid "there is no authorization code in the request"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1330
+#: src/scm/webid-oidc/errors.scm:1346
msgid "there is no refresh token in the request"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1332
+#: src/scm/webid-oidc/errors.scm:1348
#, scheme-format
msgid "~s is not an ID token (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1335
+#: src/scm/webid-oidc/errors.scm:1351
#, scheme-format
msgid "~s is not an ID token header (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1338
+#: src/scm/webid-oidc/errors.scm:1354
#, scheme-format
msgid "~s is not an ID token payload (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1341
+#: src/scm/webid-oidc/errors.scm:1357
#, scheme-format
msgid ""
"I couldn’t set the locale to ~s as an approximation of the client locale ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1344
+#: src/scm/webid-oidc/errors.scm:1360
#, scheme-format
msgid "~s does not admit ~s as an identity provider"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1347
+#: src/scm/webid-oidc/errors.scm:1363
#, scheme-format
msgid ""
"~a is neither an identity provider (because ~a) nor a webid (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1352
+#: src/scm/webid-oidc/errors.scm:1368
#, scheme-format
msgid "the token request failed (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1355
+#: src/scm/webid-oidc/errors.scm:1371
#, scheme-format
msgid "you don’t have a refresh token for identity ~a certified by ~a in ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1360
+#: src/scm/webid-oidc/errors.scm:1376
#, scheme-format
msgid "all identity provider candidates for ~a failed: ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1364
+#: src/scm/webid-oidc/errors.scm:1380
#, scheme-format
msgid "~s failed (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1367
+#: src/scm/webid-oidc/errors.scm:1383
msgid ", "
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1369
+#: src/scm/webid-oidc/errors.scm:1385
#, scheme-format
msgid "no resource has been found to serve URI path ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1372
+#: src/scm/webid-oidc/errors.scm:1388
#, scheme-format
msgid "the resource kind ~s is absent for the resource at ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1375
+#: src/scm/webid-oidc/errors.scm:1391
#, scheme-format
msgid "no resource has been found to serve URI path ~s, but ~s exists"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1378
+#: src/scm/webid-oidc/errors.scm:1394
msgid "the root storage cannot be deleted"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1380
+#: src/scm/webid-oidc/errors.scm:1396
#, scheme-format
msgid "the container ~s should be emptied before being deleted"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1383
+#: src/scm/webid-oidc/errors.scm:1399
#, scheme-format
msgid "the group ~s cannot be fetched (because ~a)"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1387
+#: src/scm/webid-oidc/errors.scm:1403
#, scheme-format
msgid "the containment triples in the request to update ~s are not up to date"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1390
+#: src/scm/webid-oidc/errors.scm:1406
#, scheme-format
msgid "the server cannot process resources with the ~s content-type"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1393
+#: src/scm/webid-oidc/errors.scm:1409
#, scheme-format
msgid ""
"the client wants to create a resource at ~s, which is reserved for an "
"auxiliary resource"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1396
+#: src/scm/webid-oidc/errors.scm:1412
#, scheme-format
msgid ""
"the operation on ~s by ~a is refused, because it’s not by ~s and the access "
"control forbids the following mode of operation: ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1400
+#: src/scm/webid-oidc/errors.scm:1416
msgid "an anonymous user"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1405
+#: src/scm/webid-oidc/errors.scm:1421
#, scheme-format
msgid ""
"the client precondition failed for ~s: it allows for ~s, forbids ~s, but the "
"resource has a representation of ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1407
+#: src/scm/webid-oidc/errors.scm:1423
#, scheme-format
msgid ""
"the client precondition failed for ~s: it allows for ~s, forbids ~s, but the "
"resource has no representation"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1412
+#: src/scm/webid-oidc/errors.scm:1428
msgid "that’s it"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1416
+#: src/scm/webid-oidc/errors.scm:1432
#, scheme-format
msgid "~a and ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1419
+#: src/scm/webid-oidc/errors.scm:1435
#, scheme-format
msgid "~a, ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1423
+#: src/scm/webid-oidc/errors.scm:1439
#, scheme-format
msgid "the signature ~a does not match key ~s with payload ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1426
+#: src/scm/webid-oidc/errors.scm:1442
msgid "there is an undefined variable"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1428
+#: src/scm/webid-oidc/errors.scm:1444
#, scheme-format
msgid "the origin is ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1431
+#: src/scm/webid-oidc/errors.scm:1447
#, scheme-format
msgid "a message is attached: ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1434
+#: src/scm/webid-oidc/errors.scm:1450
#, scheme-format
msgid "the values ~s are problematic"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1437
-msgid "there is a kind and args"
+#: src/scm/webid-oidc/errors.scm:1453
+#, scheme-format
+msgid "there is a kind (~s) and args ~s"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1439
+#: src/scm/webid-oidc/errors.scm:1456
msgid "there is an assertion failure"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1441
+#: src/scm/webid-oidc/errors.scm:1458
#, scheme-format
msgid "the program quits with code ~a"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1444
+#: src/scm/webid-oidc/errors.scm:1461
msgid "the program cannot recover from this exception"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1446
+#: src/scm/webid-oidc/errors.scm:1463
msgid "there is an external error"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1448
+#: src/scm/webid-oidc/errors.scm:1465
msgid "there is an error"
msgstr ""
-#: src/scm/webid-oidc/errors.scm:1450
+#: src/scm/webid-oidc/errors.scm:1467
#, scheme-format
msgid "Unhandled exception type ~a."
msgstr ""
-#: src/scm/webid-oidc/identity-provider.scm:54
+#: src/scm/webid-oidc/identity-provider.scm:70
msgid "Warning: generating a new key pair."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:29
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:45
msgid "xml-lang|en"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:45
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:61
msgid "page-title|Authorization"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:50
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:66
msgid "Authorize this anonymous application?"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:51
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:67
#, scheme-format
msgid "Authorize <a href=~s>~a</a>?"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:53
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:69
msgid "Do you want to authorize this application to represent you?"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:63
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:79
msgid "Please retry your password:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:64
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:80
msgid "Please enter your password:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:69
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:85
msgid "Allow"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:75
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:91
msgid "Bad request"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:80
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:96
msgid "The application did not set the <emph>client_id</emph> parameter."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:85
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:101
msgid "The application did not set the <emph>redirect_uri</emph> parameter."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:98
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:114
#, scheme-format
msgid "the value ~s is not a base64 string."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:101
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:117
msgid "the following value is not JSON:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:104
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:120
msgid "the following value is not Turtle:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:107
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:123
#, scheme-format
msgid ""
"the server request unexpectedly failed with code ~a and reason phrase ~s."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:112
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:128
#, scheme-format
msgid "the header ~a should not have the value ~s.\n"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:114
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:130
#, scheme-format
msgid "the header ~a should be present."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:118
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:134
msgid "the server response wasn’t expected:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:127
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:143
#, scheme-format
msgid "the client_id field is incorrect: ~s"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:128
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:144
msgid "the client_id field is missing"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:137
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:153
#, scheme-format
msgid "I could not fetch a RDF graph at ~a;"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:141
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:157
msgid "this is not a client manifest:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:146
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:162
#, scheme-format
msgid "the manifest does not authorize redirection URI ~a:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:151
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:167
#, scheme-format
msgid "the client manifest at ~a is advertised for ~a;"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:156
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:172
#, scheme-format
msgid "I could not fetch the client manifest of ~a;"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:161
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:177
msgid "I could not issue an authorization code for you;"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:169
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:185
msgid ""
"The application you are trying to authorize behaved unexpectedly. Here is "
"the explanation of the error:"
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:178
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:194
msgid "Redirecting..."
msgstr ""
-#: src/scm/webid-oidc/authorization-page-unsafe.scm:183
+#: src/scm/webid-oidc/authorization-page-unsafe.scm:199
#, scheme-format
msgid ""
"<a href=~s>~a</a> can now log in on your behalf. You still need to adjust "
"permissions."
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:75
+#: src/scm/webid-oidc/resource-server.scm:91
#, scheme-format
msgid "~a: authentication failure: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:204
+#: src/scm/webid-oidc/resource-server.scm:220
#, scheme-format
msgid "Warning: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/resource-server.scm:207
+#: src/scm/webid-oidc/resource-server.scm:223
#, scheme-format
msgid "Error: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:31 src/scm/webid-oidc/example-app.scm:100
-#: src/scm/webid-oidc/program.scm:81
+#: src/scm/webid-oidc/hello-world.scm:47 src/scm/webid-oidc/example-app.scm:116
+#: src/scm/webid-oidc/program.scm:111
msgid "command-line|version"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:33 src/scm/webid-oidc/example-app.scm:102
+#: src/scm/webid-oidc/hello-world.scm:49 src/scm/webid-oidc/program.scm:113
+msgid "command-line|complete-corresponding-source"
+msgstr ""
+
+#: src/scm/webid-oidc/hello-world.scm:51 src/scm/webid-oidc/example-app.scm:118
msgid "comand-line|help"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:35
+#: src/scm/webid-oidc/hello-world.scm:53
msgid "comand-line|port"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:44
+#: src/scm/webid-oidc/hello-world.scm:63
#, scheme-format
msgid ""
"~a [OPTIONS]...\n"
"\n"
"Display your identity contained in the XXX-Agent header.\n"
"\n"
+"This program is covered by the GNU Affero GPL, version 3 or\n"
+"later. This license requires you to provide a way for any user over\n"
+"the network to download the complete corresponding source code (with\n"
+"your modifications) at no cost. The server adds a \"Source:\" header\n"
+"to all responses.\n"
+"\n"
"Options:\n"
+" -S MEANS, --~a=MEANS:\n"
+" specify a way to download the complete corresponding source\n"
+" code. For instance, this would be an URI pointing to a tarball.\n"
" -h, --~a:\n"
" display this help message and exit.\n"
" -v, --~a:\n"
" display the version information (~a) and exit.\n"
-" -p PORT, --port=~a:\n"
+" -p PORT, --~a=PORT:\n"
" set the port to bind.\n"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:61 src/scm/webid-oidc/example-app.scm:143
-#: src/scm/webid-oidc/program.scm:352
+#: src/scm/webid-oidc/hello-world.scm:90 src/scm/webid-oidc/example-app.scm:159
+#: src/scm/webid-oidc/program.scm:401
#, scheme-format
msgid "~a version ~a\n"
msgstr ""
-#: src/scm/webid-oidc/hello-world.scm:72
+#: src/scm/webid-oidc/hello-world.scm:99 src/scm/webid-oidc/program.scm:409
+msgid ""
+"You are legally required to link to the complete corresponding source code.\n"
+msgstr ""
+
+#: src/scm/webid-oidc/hello-world.scm:108
msgid "The port should be a number between 0 and 65535.\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:35
+#: src/scm/webid-oidc/example-app.scm:51
#, scheme-format
msgid "~a.\t~a, certified by ~a;\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:46
+#: src/scm/webid-oidc/example-app.scm:62
#, scheme-format
msgid "~a – ~a\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:65
+#: src/scm/webid-oidc/example-app.scm:81
#, scheme-format
msgid "I’m expecting a number between ~a and ~a.\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:72
+#: src/scm/webid-oidc/example-app.scm:88
msgid "Please enter an URI to GET: "
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:91
+#: src/scm/webid-oidc/example-app.scm:107
#, scheme-format
msgid "Sending a request: ~s\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:110
+#: src/scm/webid-oidc/example-app.scm:126
#, scheme-format
msgid ""
"Usage: ~a [OPTIONS]...\n"
@@ -1032,39 +1051,39 @@ msgid ""
"If you find a bug, send a report to ~a.\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:147
+#: src/scm/webid-oidc/example-app.scm:163
msgid "First, let’s log in. Here are your options:\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:149
+#: src/scm/webid-oidc/example-app.scm:165
msgid "0.\tLog in with a different identity.\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:154
-#: src/scm/webid-oidc/example-app.scm:173
+#: src/scm/webid-oidc/example-app.scm:170
+#: src/scm/webid-oidc/example-app.scm:189
msgid "Please indicate your choice number: "
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:159
+#: src/scm/webid-oidc/example-app.scm:175
msgid "Please enter your webid, or identity server: "
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:169
+#: src/scm/webid-oidc/example-app.scm:185
msgid "There are different possible identity providers for your webid:\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:176
+#: src/scm/webid-oidc/example-app.scm:192
#, scheme-format
msgid ""
"Please visit the following URI with a web browser:\n"
"~a\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:178
+#: src/scm/webid-oidc/example-app.scm:194
msgid "Please paste your authorization code: "
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:189
+#: src/scm/webid-oidc/example-app.scm:205
#, scheme-format
msgid ""
"Log in success. Keep this identity token for yourself:\n"
@@ -1081,98 +1100,104 @@ msgid ""
"~a\n"
msgstr ""
-#: src/scm/webid-oidc/example-app.scm:210
+#: src/scm/webid-oidc/example-app.scm:226
#, scheme-format
msgid "There was an error: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:53
+#: src/scm/webid-oidc/program.scm:72
#, scheme-format
msgid "~a: Internal server error: ~a\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:64
+#: src/scm/webid-oidc/program.scm:84
#, scheme-format
msgid ""
"The client locale ~s can’t be approximated by system locale ~s (because ~a), "
"using C.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:83
+#: src/scm/webid-oidc/program.scm:115
msgid "command-line|help"
msgstr ""
-#: src/scm/webid-oidc/program.scm:85
+#: src/scm/webid-oidc/program.scm:117
msgid "command-line|server|port"
msgstr ""
-#: src/scm/webid-oidc/program.scm:87
+#: src/scm/webid-oidc/program.scm:119
msgid "command-line|server|server-name"
msgstr ""
-#: src/scm/webid-oidc/program.scm:89
+#: src/scm/webid-oidc/program.scm:121
msgid "command-line|server|reverse-proxy|backend-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:91
+#: src/scm/webid-oidc/program.scm:123
msgid "command-line|server|reverse-proxy|header"
msgstr ""
-#: src/scm/webid-oidc/program.scm:93
+#: src/scm/webid-oidc/program.scm:125
msgid "command-line|server|issuer|key-file"
msgstr ""
-#: src/scm/webid-oidc/program.scm:95
+#: src/scm/webid-oidc/program.scm:127
msgid "command-line|server|issuer|subject"
msgstr ""
-#: src/scm/webid-oidc/program.scm:97
+#: src/scm/webid-oidc/program.scm:129
msgid "command-line|server|issuer|password"
msgstr ""
-#: src/scm/webid-oidc/program.scm:99
+#: src/scm/webid-oidc/program.scm:131
msgid "command-line|server|issuer|jwks-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:101
+#: src/scm/webid-oidc/program.scm:133
msgid "command-line|server|issuer|authorization-endpoint-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:103
+#: src/scm/webid-oidc/program.scm:135
msgid "command-line|server|issuer|token-endpoint-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:105
+#: src/scm/webid-oidc/program.scm:137
msgid "command-line|server|client-id"
msgstr ""
-#: src/scm/webid-oidc/program.scm:107
+#: src/scm/webid-oidc/program.scm:139
msgid "command-line|server|redirect-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:109
+#: src/scm/webid-oidc/program.scm:141
msgid "command-line|server|client-name"
msgstr ""
-#: src/scm/webid-oidc/program.scm:111
+#: src/scm/webid-oidc/program.scm:143
msgid "command-line|server|client-uri"
msgstr ""
-#: src/scm/webid-oidc/program.scm:113
+#: src/scm/webid-oidc/program.scm:145
msgid "command-line|log-file"
msgstr ""
-#: src/scm/webid-oidc/program.scm:115
+#: src/scm/webid-oidc/program.scm:147
msgid "command-line|error-file"
msgstr ""
-#: src/scm/webid-oidc/program.scm:139
+#: src/scm/webid-oidc/program.scm:172
#, scheme-format
msgid ""
"Usage: ~a COMMAND [OPTIONS]...\n"
"\n"
"Run the webid-oidc COMMAND.\n"
"\n"
+"This program is covered by the GNU Affero GPL, version 3 or\n"
+"later. This license requires you to provide a way for any user over\n"
+"the network to download the complete corresponding source code (with\n"
+"your modifications) at no cost. The server adds a \"Source:\" header\n"
+"to all responses.\n"
+"\n"
"Available commands:\n"
" ~a:\n"
" run an authenticating reverse proxy.\n"
@@ -1185,6 +1210,9 @@ msgid ""
" facility.\n"
"\n"
"General options:\n"
+" -S MEANS, --~a=MEANS:\n"
+" specify a way to download the complete corresponding source\n"
+" code. For instance, this would be an URI pointing to a tarball.\n"
" -h, --~a:\n"
" display a short help message and exit.\n"
" -v, --~a:\n"
@@ -1267,6 +1295,7 @@ msgid ""
"from this reverse proxy.\n"
"\n"
" ~a ~a \\\n"
+" --~a 'https://data.provider.com/server-source-code.tar.gz' \\\n"
" --~a 8080 \\\n"
" --~a 'https://data.provider.com' \\\n"
" --~a 'https://private.data.provider.com' \\\n"
@@ -1282,6 +1311,8 @@ msgid ""
" export XDG_DATA_HOME=/var/lib\n"
" export XDG_CACHE_HOME=/var/cache\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu' \\\n"
" --~a '/var/lib/webid-oidc/issuer/key.jwk' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/profile/card#me' \\\n"
@@ -1296,6 +1327,8 @@ msgid ""
"webid-oidc-demo.planete-kraus.eu is configured this way:\n"
"\n"
" ~a ~a \\\n"
+" --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-"
+"source.tar.gz' \\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/example-application#id' "
"\\\n"
" --~a 'https://webid-oidc-demo.planete-kraus.eu/authorized' \\\n"
@@ -1307,127 +1340,127 @@ msgid ""
"If you find a bug, then please send a report to ~a.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:277 src/scm/webid-oidc/program.scm:334
-#: src/scm/webid-oidc/program.scm:435
+#: src/scm/webid-oidc/program.scm:322 src/scm/webid-oidc/program.scm:380
+#: src/scm/webid-oidc/program.scm:491
msgid "command-line|command|reverse-proxy"
msgstr ""
-#: src/scm/webid-oidc/program.scm:278 src/scm/webid-oidc/program.scm:340
-#: src/scm/webid-oidc/program.scm:453
+#: src/scm/webid-oidc/program.scm:323 src/scm/webid-oidc/program.scm:387
+#: src/scm/webid-oidc/program.scm:511
msgid "command-line|command|identity-provider"
msgstr ""
-#: src/scm/webid-oidc/program.scm:279 src/scm/webid-oidc/program.scm:346
-#: src/scm/webid-oidc/program.scm:494
+#: src/scm/webid-oidc/program.scm:324 src/scm/webid-oidc/program.scm:394
+#: src/scm/webid-oidc/program.scm:552
msgid "command-line|command|client-service"
msgstr ""
-#: src/scm/webid-oidc/program.scm:280 src/scm/webid-oidc/program.scm:520
+#: src/scm/webid-oidc/program.scm:325 src/scm/webid-oidc/program.scm:578
msgid "command-line|command|server"
msgstr ""
-#: src/scm/webid-oidc/program.scm:315 src/scm/webid-oidc/program.scm:319
-#: src/scm/webid-oidc/program.scm:323 src/scm/webid-oidc/program.scm:327
+#: src/scm/webid-oidc/program.scm:361 src/scm/webid-oidc/program.scm:365
+#: src/scm/webid-oidc/program.scm:369 src/scm/webid-oidc/program.scm:373
#, scheme-format
msgid "an environment variable| It is currently set to ~s."
msgstr ""
-#: src/scm/webid-oidc/program.scm:317 src/scm/webid-oidc/program.scm:321
-#: src/scm/webid-oidc/program.scm:325 src/scm/webid-oidc/program.scm:329
+#: src/scm/webid-oidc/program.scm:363 src/scm/webid-oidc/program.scm:367
+#: src/scm/webid-oidc/program.scm:371 src/scm/webid-oidc/program.scm:375
msgid "an environment variable| It is currently unset."
msgstr ""
-#: src/scm/webid-oidc/program.scm:360
+#: src/scm/webid-oidc/program.scm:416
#, scheme-format
msgid "The --~a argument must be a number, not ~s.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:366
+#: src/scm/webid-oidc/program.scm:422
#, scheme-format
msgid "The --~a argument must be an integer, not ~s.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:372
+#: src/scm/webid-oidc/program.scm:428
#, scheme-format
msgid "The --~a argument must be positive, ~s is invalid.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:377
+#: src/scm/webid-oidc/program.scm:433
#, scheme-format
msgid "The --~a argument must be less than 65536, ~s is invalid.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:419
+#: src/scm/webid-oidc/program.scm:475
#, scheme-format
msgid ""
"Usage: ~a COMMAND [OPTIONS]...\n"
"See --~a (-h).\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:438 src/scm/webid-oidc/program.scm:456
-#: src/scm/webid-oidc/program.scm:522
+#: src/scm/webid-oidc/program.scm:494 src/scm/webid-oidc/program.scm:514
+#: src/scm/webid-oidc/program.scm:580
#, scheme-format
msgid "You must pass --~a to set the server name.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:442
+#: src/scm/webid-oidc/program.scm:498
#, scheme-format
msgid "You must pass --~a to set the backend URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:460 src/scm/webid-oidc/program.scm:526
+#: src/scm/webid-oidc/program.scm:518 src/scm/webid-oidc/program.scm:584
#, scheme-format
msgid ""
"You must pass --~a to set the file where to store the identity provider "
"key.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:464 src/scm/webid-oidc/program.scm:530
+#: src/scm/webid-oidc/program.scm:522 src/scm/webid-oidc/program.scm:588
#, scheme-format
msgid "You must pass --~a to set the subject of the identity provider.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:468 src/scm/webid-oidc/program.scm:534
+#: src/scm/webid-oidc/program.scm:526 src/scm/webid-oidc/program.scm:592
#, scheme-format
msgid "You must pass --~a to set the subject’s password.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:472 src/scm/webid-oidc/program.scm:538
+#: src/scm/webid-oidc/program.scm:530 src/scm/webid-oidc/program.scm:596
#, scheme-format
msgid "You must pass --~a to set the JWKS URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:476 src/scm/webid-oidc/program.scm:542
+#: src/scm/webid-oidc/program.scm:534 src/scm/webid-oidc/program.scm:600
#, scheme-format
msgid "You must pass --~a to set the authorization endpoint URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:480 src/scm/webid-oidc/program.scm:546
+#: src/scm/webid-oidc/program.scm:538 src/scm/webid-oidc/program.scm:604
#, scheme-format
msgid "You must pass --~a to set the token endpoint URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:497
+#: src/scm/webid-oidc/program.scm:555
#, scheme-format
msgid "You must pass --~a to set the application web ID.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:501
+#: src/scm/webid-oidc/program.scm:559
#, scheme-format
msgid "You must pass --~a to set the redirection URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:505
+#: src/scm/webid-oidc/program.scm:563
#, scheme-format
msgid "You must pass --~a to set the informative client name.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:509
+#: src/scm/webid-oidc/program.scm:567
#, scheme-format
msgid "You must pass --~a to set the informative client URI.\n"
msgstr ""
-#: src/scm/webid-oidc/program.scm:589
+#: src/scm/webid-oidc/program.scm:649
#, scheme-format
msgid "Unknown command ~s\n"
msgstr ""
diff --git a/pre-inst-env.in b/pre-inst-env.in
index fd54ee2..f1323c9 100755
--- a/pre-inst-env.in
+++ b/pre-inst-env.in
@@ -1,5 +1,21 @@
#!@SHELL@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
abs_top_srcdir="$(cd "@abs_top_srcdir@" > /dev/null; pwd)"
abs_top_builddir="$(cd "@abs_top_builddir@" > /dev/null; pwd)"
diff --git a/src/Makefile.am b/src/Makefile.am
index 034ae92..930fe01 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
lib_LTLIBRARIES += %reldir%/libwebidoidc.la
dist_bin_SCRIPTS += %reldir%/webid-oidc %reldir%/webid-oidc-hello %reldir%/webid-oidc-example-app
diff --git a/src/base64/Makefile.am b/src/base64/Makefile.am
index 11fdc5a..c049520 100644
--- a/src/base64/Makefile.am
+++ b/src/base64/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
noinst_LTLIBRARIES += %reldir%/libwebidoidc-base64.la
EXTRA_DIST += %reldir%/libwebidoidc-base64.x
BUILT_SOURCES += %reldir%/libwebidoidc-base64.x
diff --git a/src/base64/libwebidoidc-base64.c b/src/base64/libwebidoidc-base64.c
index 8eb29b8..51255b0 100644
--- a/src/base64/libwebidoidc-base64.c
+++ b/src/base64/libwebidoidc-base64.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#include <utilities.h>
#define _(s) dgettext (PACKAGE, s)
diff --git a/src/hash/Makefile.am b/src/hash/Makefile.am
index 5579608..5ecdd14 100644
--- a/src/hash/Makefile.am
+++ b/src/hash/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
noinst_LTLIBRARIES += %reldir%/libwebidoidc-hash.la
EXTRA_DIST += %reldir%/libwebidoidc-hash.x
BUILT_SOURCES += %reldir%/libwebidoidc-hash.x
diff --git a/src/hash/libwebidoidc-hash.c b/src/hash/libwebidoidc-hash.c
index 75d7da9..a9876d1 100644
--- a/src/hash/libwebidoidc-hash.c
+++ b/src/hash/libwebidoidc-hash.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#include <utilities.h>
#include <nettle/sha2.h>
diff --git a/src/inst/Makefile.am b/src/inst/Makefile.am
index 08c3f1c..d127a49 100644
--- a/src/inst/Makefile.am
+++ b/src/inst/Makefile.am
@@ -1 +1,17 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
include %reldir%/webid-oidc/Makefile.am
diff --git a/src/inst/webid-oidc/Makefile.am b/src/inst/webid-oidc/Makefile.am
index c6edc5c..5b7cfc4 100644
--- a/src/inst/webid-oidc/Makefile.am
+++ b/src/inst/webid-oidc/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
webidoidcmod_DATA += %reldir%/config.scm
webidoidcgo_DATA += %reldir%/config.go
diff --git a/src/jwk/Makefile.am b/src/jwk/Makefile.am
index 686f450..25f89b4 100644
--- a/src/jwk/Makefile.am
+++ b/src/jwk/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
noinst_LTLIBRARIES += %reldir%/libwebidoidc-jwk.la
noinst_PROGRAMS += %reldir%/generate-key
EXTRA_DIST += %reldir%/libwebidoidc-jwk.x
diff --git a/src/jwk/generate-key.c b/src/jwk/generate-key.c
index e875b24..61e7089 100644
--- a/src/jwk/generate-key.c
+++ b/src/jwk/generate-key.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif /* HAVE_CONFIG_H */
diff --git a/src/jwk/libwebidoidc-jwk.c b/src/jwk/libwebidoidc-jwk.c
index 71cb71c..29e038f 100644
--- a/src/jwk/libwebidoidc-jwk.c
+++ b/src/jwk/libwebidoidc-jwk.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#include <utilities.h>
#define _(s) dgettext (PACKAGE, s)
diff --git a/src/jws/Makefile.am b/src/jws/Makefile.am
index cf09f0e..a0cd924 100644
--- a/src/jws/Makefile.am
+++ b/src/jws/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
noinst_LTLIBRARIES += %reldir%/libwebidoidc-jws.la
EXTRA_DIST += %reldir%/libwebidoidc-jws.x
BUILT_SOURCES += %reldir%/libwebidoidc-jws.x
diff --git a/src/jws/libwebidoidc-jws.c b/src/jws/libwebidoidc-jws.c
index 17ae6b5..a35b854 100644
--- a/src/jws/libwebidoidc-jws.c
+++ b/src/jws/libwebidoidc-jws.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#include <utilities.h>
#define _(s) dgettext (PACKAGE, s)
diff --git a/src/libwebidoidc.c b/src/libwebidoidc.c
index 1c637e5..32f4c70 100644
--- a/src/libwebidoidc.c
+++ b/src/libwebidoidc.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#define N_(s)
void init_webidoidc_base64 (void);
void init_webidoidc_random (void);
diff --git a/src/pre-inst/Makefile.am b/src/pre-inst/Makefile.am
index 035a7bb..002bc2c 100644
--- a/src/pre-inst/Makefile.am
+++ b/src/pre-inst/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
include %reldir%/webid-oidc/Makefile.am
GUILD_OPTIONS += -L %reldir% -L $(srcdir)/%reldir%
diff --git a/src/pre-inst/webid-oidc/Makefile.am b/src/pre-inst/webid-oidc/Makefile.am
index 0503c8d..e168509 100644
--- a/src/pre-inst/webid-oidc/Makefile.am
+++ b/src/pre-inst/webid-oidc/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
$(go_DATA) $(webidoidcgo_DATA): %reldir%/config.go
CLEANFILES += %reldir%/config.go %reldir%/config.scm
diff --git a/src/random/Makefile.am b/src/random/Makefile.am
index fbd548c..79708b3 100644
--- a/src/random/Makefile.am
+++ b/src/random/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
noinst_LTLIBRARIES += %reldir%/libwebidoidc-random.la
noinst_PROGRAMS += %reldir%/generate-random
EXTRA_DIST += %reldir%/libwebidoidc-random.x
diff --git a/src/random/generate-random.c b/src/random/generate-random.c
index bde01b9..955fb88 100644
--- a/src/random/generate-random.c
+++ b/src/random/generate-random.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif /* HAVE_CONFIG_H */
diff --git a/src/random/libwebidoidc-random.c b/src/random/libwebidoidc-random.c
index 2bea9bb..10e8882 100644
--- a/src/random/libwebidoidc-random.c
+++ b/src/random/libwebidoidc-random.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#include <utilities.h>
#include <threads.h>
#include <fcntl.h>
diff --git a/src/random/random.c b/src/random/random.c
index d5c45f5..9c2faf3 100644
--- a/src/random/random.c
+++ b/src/random/random.c
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif /* not HAVE_CONFIG_H */
diff --git a/src/random/webid-oidc/random.h b/src/random/webid-oidc/random.h
index ae1adfc..65485fc 100644
--- a/src/random/webid-oidc/random.h
+++ b/src/random/webid-oidc/random.h
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#ifndef H_RANDOM_INCLUDED
#define H_RANDOM_INCLUDED
diff --git a/src/scm/Makefile.am b/src/scm/Makefile.am
index 33855e1..d127a49 100644
--- a/src/scm/Makefile.am
+++ b/src/scm/Makefile.am
@@ -1,4 +1,17 @@
-dist_mod_DATA += %reldir%/webid-oidc.scm
-go_DATA += %reldir%/webid-oidc.go
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
include %reldir%/webid-oidc/Makefile.am
diff --git a/src/scm/webid-oidc.scm b/src/scm/webid-oidc.scm
deleted file mode 100644
index 38c563d..0000000
--- a/src/scm/webid-oidc.scm
+++ /dev/null
@@ -1,3 +0,0 @@
-(define-module (webid-oidc)
- #:use-module (webid-oidc config)
- #:use-module (webid-oidc jws))
diff --git a/src/scm/webid-oidc/Makefile.am b/src/scm/webid-oidc/Makefile.am
index d96b63a..867d2ee 100644
--- a/src/scm/webid-oidc/Makefile.am
+++ b/src/scm/webid-oidc/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
dist_webidoidcmod_DATA += \
%reldir%/errors.scm \
%reldir%/stubs.scm \
diff --git a/src/scm/webid-oidc/access-token.scm b/src/scm/webid-oidc/access-token.scm
index 34afcdc..9c57326 100644
--- a/src/scm/webid-oidc/access-token.scm
+++ b/src/scm/webid-oidc/access-token.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc access-token)
#:use-module (webid-oidc jws)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/authorization-code.scm b/src/scm/webid-oidc/authorization-code.scm
index ebe97c4..3a0da3b 100644
--- a/src/scm/webid-oidc/authorization-code.scm
+++ b/src/scm/webid-oidc/authorization-code.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc authorization-code)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
diff --git a/src/scm/webid-oidc/authorization-endpoint.scm b/src/scm/webid-oidc/authorization-endpoint.scm
index 8dfa71f..3c4a730 100644
--- a/src/scm/webid-oidc/authorization-endpoint.scm
+++ b/src/scm/webid-oidc/authorization-endpoint.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc authorization-endpoint)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc authorization-page)
diff --git a/src/scm/webid-oidc/authorization-page-unsafe.scm b/src/scm/webid-oidc/authorization-page-unsafe.scm
index f969caf..1ab235e 100644
--- a/src/scm/webid-oidc/authorization-page-unsafe.scm
+++ b/src/scm/webid-oidc/authorization-page-unsafe.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc authorization-page-unsafe)
#:use-module (webid-oidc errors)
#:use-module (sxml simple)
diff --git a/src/scm/webid-oidc/authorization-page.scm b/src/scm/webid-oidc/authorization-page.scm
index b2c2f1f..453275b 100644
--- a/src/scm/webid-oidc/authorization-page.scm
+++ b/src/scm/webid-oidc/authorization-page.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc authorization-page)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc authorization-page-unsafe) #:prefix unsafe:)
diff --git a/src/scm/webid-oidc/cache.scm b/src/scm/webid-oidc/cache.scm
index 9435c10..8b8c480 100644
--- a/src/scm/webid-oidc/cache.scm
+++ b/src/scm/webid-oidc/cache.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc cache)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
#:use-module (web client)
diff --git a/src/scm/webid-oidc/client-manifest.scm b/src/scm/webid-oidc/client-manifest.scm
index 54c098a..0515fdd 100644
--- a/src/scm/webid-oidc/client-manifest.scm
+++ b/src/scm/webid-oidc/client-manifest.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc client-manifest)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc fetch)
diff --git a/src/scm/webid-oidc/client.scm b/src/scm/webid-oidc/client.scm
index d8f438b..aea2b7e 100644
--- a/src/scm/webid-oidc/client.scm
+++ b/src/scm/webid-oidc/client.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc client)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc provider-confirmation)
diff --git a/src/scm/webid-oidc/dpop-proof.scm b/src/scm/webid-oidc/dpop-proof.scm
index 89c78af..c716c33 100644
--- a/src/scm/webid-oidc/dpop-proof.scm
+++ b/src/scm/webid-oidc/dpop-proof.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc dpop-proof)
#:use-module (webid-oidc jws)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/errors.scm b/src/scm/webid-oidc/errors.scm
index dd68557..c969a40 100644
--- a/src/scm/webid-oidc/errors.scm
+++ b/src/scm/webid-oidc/errors.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
#:use-module (ice-9 exceptions)
@@ -1434,7 +1450,8 @@
(format #f (G_ "the values ~s are problematic")
(exception-irritants err)))
((&exception-with-kind-and-args)
- (format #f (G_ "there is a kind and args")))
+ (format #f (G_ "there is a kind (~s) and args ~s")
+ (get 'kind) (get 'args)))
((&assertion-failure)
(format #f (G_ "there is an assertion failure")))
((&quit-exception)
diff --git a/src/scm/webid-oidc/example-app.scm b/src/scm/webid-oidc/example-app.scm
index bb2faa6..8d11c73 100644
--- a/src/scm/webid-oidc/example-app.scm
+++ b/src/scm/webid-oidc/example-app.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc example-app)
#:use-module (webid-oidc client)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/fetch.scm b/src/scm/webid-oidc/fetch.scm
index 6642ed1..f998ba2 100644
--- a/src/scm/webid-oidc/fetch.scm
+++ b/src/scm/webid-oidc/fetch.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc fetch)
#:use-module (webid-oidc errors)
#:use-module (ice-9 optargs)
diff --git a/src/scm/webid-oidc/hello-world.scm b/src/scm/webid-oidc/hello-world.scm
index cda88e4..9dc85cb 100644
--- a/src/scm/webid-oidc/hello-world.scm
+++ b/src/scm/webid-oidc/hello-world.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc hello-world)
#:use-module (webid-oidc resource-server)
#:use-module (webid-oidc jti)
@@ -29,13 +45,16 @@
(textdomain cfg:package)
(let ((version-sym
(string->symbol (G_ "command-line|version")))
+ (complete-corresponding-source-sym
+ (string->symbol (G_ "command-line|complete-corresponding-source")))
(help-sym
(string->symbol (G_ "comand-line|help")))
(port-sym
(string->symbol (G_ "comand-line|port"))))
(let ((options
(let ((option-spec
- `((,version-sym (single-char #\v) (value #f))
+ `((,complete-corresponding-source-sym (single-char #\S) (value #t))
+ (,version-sym (single-char #\v) (value #f))
(,help-sym (single-char #\h) (value #f))
(,port-sym (single-char #\p) (value #t)))))
(getopt-long (command-line) option-spec))))
@@ -45,15 +64,25 @@
Display your identity contained in the XXX-Agent header.
+This program is covered by the GNU Affero GPL, version 3 or
+later. This license requires you to provide a way for any user over
+the network to download the complete corresponding source code (with
+your modifications) at no cost. The server adds a \"Source:\" header
+to all responses.
+
Options:
+ -S MEANS, --~a=MEANS:
+ specify a way to download the complete corresponding source
+ code. For instance, this would be an URI pointing to a tarball.
-h, --~a:
display this help message and exit.
-v, --~a:
display the version information (~a) and exit.
- -p PORT, --port=~a:
+ -p PORT, --~a=PORT:
set the port to bind.
")
(car (command-line))
+ complete-corresponding-source-sym
help-sym version-sym
cfg:version
port-sym))
@@ -63,6 +92,13 @@ Options:
(else
(let ((port-string
(option-ref options port-sym "8080"))
+ (means-string
+ (let ((str (option-ref options complete-corresponding-source-sym #f)))
+ (unless str
+ (format (current-error-port)
+ (G_ "You are legally required to link to the complete corresponding source code.\n"))
+ (exit 1))
+ str))
(jti-list (make-jti-list)))
(unless (and (string->number port-string)
(integer? (string->number port-string))
@@ -78,7 +114,8 @@ Options:
(if (and agent (string->uri agent))
(values
(build-response
- #:headers '((content-type application/xhtml+xml)))
+ #:headers `((content-type application/xhtml+xml)
+ (source . ,means-string)))
(with-output-to-string
(lambda ()
(sxml->xml
@@ -92,7 +129,8 @@ Options:
(values
(build-response #:code 401
#:reason-phrase "Unauthorized"
- #:headers '((content-type application/xhtml+xml)))
+ #:headers `((content-type application/xhtml+xml)
+ (source . ,means-string)))
(with-output-to-string
(lambda ()
(sxml->xml
@@ -104,7 +142,8 @@ Options:
(values
(build-response #:code 405
#:reason-phrase "Method Not Allowed"
- #:headers '((content-type application/xhtml+xml)))
+ #:headers `((content-type application/xhtml+xml)
+ (source . ,means-string)))
(with-output-to-string
(lambda ()
(sxml->xml
diff --git a/src/scm/webid-oidc/http-link.scm b/src/scm/webid-oidc/http-link.scm
index 3400faf..64efc07 100644
--- a/src/scm/webid-oidc/http-link.scm
+++ b/src/scm/webid-oidc/http-link.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc http-link)
#:use-module (ice-9 receive)
#:use-module (ice-9 optargs)
diff --git a/src/scm/webid-oidc/identity-provider.scm b/src/scm/webid-oidc/identity-provider.scm
index 6f96b44..37a01be 100644
--- a/src/scm/webid-oidc/identity-provider.scm
+++ b/src/scm/webid-oidc/identity-provider.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc identity-provider)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc authorization-endpoint)
diff --git a/src/scm/webid-oidc/jti.scm b/src/scm/webid-oidc/jti.scm
index 423382a..4713d7d 100644
--- a/src/scm/webid-oidc/jti.scm
+++ b/src/scm/webid-oidc/jti.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc jti)
#:use-module (ice-9 atomic)
#:use-module (ice-9 threads)
diff --git a/src/scm/webid-oidc/jwk.scm b/src/scm/webid-oidc/jwk.scm
index fd94b9e..57da31d 100644
--- a/src/scm/webid-oidc/jwk.scm
+++ b/src/scm/webid-oidc/jwk.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc jwk)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/jws.scm b/src/scm/webid-oidc/jws.scm
index fb3edd1..43eb707 100644
--- a/src/scm/webid-oidc/jws.scm
+++ b/src/scm/webid-oidc/jws.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc jws)
#:use-module (webid-oidc jwk)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/oidc-configuration.scm b/src/scm/webid-oidc/oidc-configuration.scm
index 99a4e17..2169a99 100644
--- a/src/scm/webid-oidc/oidc-configuration.scm
+++ b/src/scm/webid-oidc/oidc-configuration.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc oidc-configuration)
#:use-module (webid-oidc jwk)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/oidc-id-token.scm b/src/scm/webid-oidc/oidc-id-token.scm
index 18ac124..9fe276c 100644
--- a/src/scm/webid-oidc/oidc-id-token.scm
+++ b/src/scm/webid-oidc/oidc-id-token.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc oidc-id-token)
#:use-module (webid-oidc oidc-configuration)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/program.scm b/src/scm/webid-oidc/program.scm
index 2ab1cbe..a9c1a0f 100644
--- a/src/scm/webid-oidc/program.scm
+++ b/src/scm/webid-oidc/program.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc program)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc reverse-proxy)
@@ -13,6 +29,7 @@
#:use-module (ice-9 i18n)
#:use-module (ice-9 getopt-long)
#:use-module (ice-9 suspendable-ports)
+ #:use-module (ice-9 control)
#:use-module (srfi srfi-19)
#:use-module (rnrs bytevectors)
#:use-module (web uri)
@@ -45,31 +62,44 @@
(define cache-http-get
(with-cache #:http-get http-get-with-log))
-(define (handler-with-log handler)
+(define (handler-with-log complete-corresponding-source handler)
(lambda (request request-body)
- (with-exception-handler
- (lambda (error)
- (format (current-error-port)
- (G_ "~a: Internal server error: ~a\n")
- (date->string (time-utc->date (current-time)))
- (error->str error))
- (values
- (build-response #:code 500
- #:reason-phrase "Internal Server Error")
- "Sorry, there was an error."))
- (lambda ()
- (with-exception-handler
- (lambda (error)
- (format (current-error-port)
- (G_ "The client locale ~s can’t be approximated by system locale ~s (because ~a), using C.\n")
- ((record-accessor &unknown-client-locale 'web-locale) error)
- ((record-accessor &unknown-client-locale 'c-locale) error)
- (error->str error)))
- (lambda ()
- (handler request request-body))
- #:unwind? #t
- #:unwind-for-type &unknown-client-locale))
- #:unwind? #t)))
+ (call/ec
+ (lambda (return)
+ (with-exception-handler
+ (lambda (error)
+ (format (current-error-port)
+ (G_ "~a: Internal server error: ~a\n")
+ (date->string (time-utc->date (current-time)))
+ (error->str error))
+ (return
+ (build-response #:code 500
+ #:reason-phrase "Internal Server Error"
+ #:headers `((source . ,complete-corresponding-source)))
+ "Sorry, there was an error."))
+ (lambda ()
+ (with-exception-handler
+ (lambda (error)
+ (format (current-error-port)
+ (G_ "The client locale ~s can’t be approximated by system locale ~s (because ~a), using C.\n")
+ ((record-accessor &unknown-client-locale 'web-locale) error)
+ ((record-accessor &unknown-client-locale 'c-locale) error)
+ (error->str error)))
+ (lambda ()
+ (receive (response response-body)
+ (handler request request-body)
+ (return
+ (build-response
+ #:version (response-version response)
+ #:code (response-code response)
+ #:reason-phrase (response-reason-phrase response)
+ #:headers (cons `(source . ,complete-corresponding-source)
+ (response-headers response))
+ #:port (response-port response)
+ #:validate-headers? #t)
+ response-body)))
+ #:unwind? #t
+ #:unwind-for-type &unknown-client-locale)))))))
(define-public (main)
(setvbuf (current-output-port) 'none)
@@ -79,6 +109,8 @@
(textdomain cfg:package)
(let ((version-sym
(string->symbol (G_ "command-line|version")))
+ (complete-corresponding-source-sym
+ (string->symbol (G_ "command-line|complete-corresponding-source")))
(help-sym
(string->symbol (G_ "command-line|help")))
(port-sym
@@ -115,7 +147,8 @@
(string->symbol (G_ "command-line|error-file"))))
(let ((options
(let ((spec
- `((,version-sym (single-char #\v) (value #f))
+ `((,complete-corresponding-source-sym (single-char #\S) (value #t))
+ (,version-sym (single-char #\v) (value #f))
(,help-sym (single-char #\h) (value #f))
(,log-file-sym (single-char #\l) (value #t))
(,error-file-sym (single-char #\e) (value #t))
@@ -140,6 +173,12 @@
Run the webid-oidc COMMAND.
+This program is covered by the GNU Affero GPL, version 3 or
+later. This license requires you to provide a way for any user over
+the network to download the complete corresponding source code (with
+your modifications) at no cost. The server adds a \"Source:\" header
+to all responses.
+
Available commands:
~a:
run an authenticating reverse proxy.
@@ -152,6 +191,9 @@ Available commands:
facility.
General options:
+ -S MEANS, --~a=MEANS:
+ specify a way to download the complete corresponding source
+ code. For instance, this would be an URI pointing to a tarball.
-h, --~a:
display a short help message and exit.
-v, --~a:
@@ -234,6 +276,7 @@ user. https://private.data.provider.com should only accept requests
from this reverse proxy.
~a ~a \\
+ --~a 'https://data.provider.com/server-source-code.tar.gz' \\
--~a 8080 \\
--~a 'https://data.provider.com' \\
--~a 'https://private.data.provider.com' \\
@@ -249,6 +292,7 @@ invoked with the following options:
export XDG_DATA_HOME=/var/lib
export XDG_CACHE_HOME=/var/cache
~a ~a \\
+ --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-source.tar.gz' \\
--~a 'https://webid-oidc-demo.planete-kraus.eu' \\
--~a '/var/lib/webid-oidc/issuer/key.jwk' \\
--~a 'https://webid-oidc-demo.planete-kraus.eu/profile/card#me' \\
@@ -263,6 +307,7 @@ Running the public pages for an application
webid-oidc-demo.planete-kraus.eu is configured this way:
~a ~a \\
+ --~a 'https://webid-oidc.planete-kraus.eu/complete-corresponding-source.tar.gz' \\
--~a 'https://webid-oidc-demo.planete-kraus.eu/example-application#id' \\
--~a 'https://webid-oidc-demo.planete-kraus.eu/authorized' \\
--~a 'Example Solid Application' \\
@@ -279,6 +324,7 @@ If you find a bug, then please send a report to ~a.
(G_ "command-line|command|client-service")
(G_ "command-line|command|server")
;; General options
+ complete-corresponding-source-sym
;; help
help-sym
;; version
@@ -333,17 +379,20 @@ If you find a bug, then please send a report to ~a.
;; command
(G_ "command-line|command|reverse-proxy")
;; options
+ complete-corresponding-source-sym
port-sym server-name-sym backend-uri-sym header-sym
log-file-sym error-file-sym
;; Running an identity provider
(car (command-line))
(G_ "command-line|command|identity-provider")
+ complete-corresponding-source-sym
server-name-sym key-file-sym subject-sym password-sym
jwks-uri-sym authorization-endpoint-uri-sym
token-endpoint-uri-sym port-sym
;; Running the public pages for an application
(car (command-line))
(G_ "command-line|command|client-service")
+ complete-corresponding-source-sym
client-id-sym redirect-uri-sym client-name-sym client-uri-sym
port-sym
;; Bug report
@@ -353,6 +402,13 @@ If you find a bug, then please send a report to ~a.
cfg:package cfg:version))
(else
(let ((rest (option-ref options '() '()))
+ (complete-corresponding-source
+ (let ((str (option-ref options complete-corresponding-source-sym #f)))
+ (unless str
+ (format (current-error-port)
+ (G_ "You are legally required to link to the complete corresponding source code.\n"))
+ (exit 1))
+ str))
(port
(let ((port (string->number (option-ref options port-sym "8080"))))
(unless port
@@ -443,11 +499,13 @@ If you find a bug, then please send a report to ~a.
backend-uri-sym)
(exit 1))
(run-server
- (make-reverse-proxy
- #:server-uri server-name
- #:http-get cache-http-get
- #:endpoint backend-uri
- #:auth-header header)
+ (handler-with-log
+ complete-corresponding-source
+ (make-reverse-proxy
+ #:server-uri server-name
+ #:http-get cache-http-get
+ #:endpoint backend-uri
+ #:auth-header header))
'http
(list #:port port))))
((equal? command (G_ "command-line|command|identity-provider"))
@@ -488,7 +546,7 @@ If you find a bug, then please send a report to ~a.
#:current-time current-time
#:http-get cache-http-get)))
(run-server
- (handler-with-log handler)
+ (handler-with-log complete-corresponding-source handler)
'http
(list #:port port)))))
((equal? command (G_ "command-line|command|client-service"))
@@ -514,7 +572,7 @@ If you find a bug, then please send a report to ~a.
#:client-name client-name
#:client-uri client-uri)))
(run-server
- (handler-with-log handler)
+ (handler-with-log complete-corresponding-source handler)
'http
(list #:port port)))))
((equal? command (G_ "command-line|command|server"))
@@ -575,14 +633,16 @@ If you find a bug, then please send a report to ~a.
#:http-get cache-http-get)))
(create-root server-name subject)
(run-server
- (lambda (request request-body)
- (let ((path (uri-path (request-uri request))))
- (if (or (equal? path "/.well-known/openid-configuration")
- (equal? path (uri-path jwks-uri))
- (equal? path (uri-path authorization-endpoint-uri))
- (equal? path (uri-path token-endpoint-uri)))
- (identity-provider-handler request request-body)
- (resource-handler request request-body))))
+ (handler-with-log
+ complete-corresponding-source
+ (lambda (request request-body)
+ (let ((path (uri-path (request-uri request))))
+ (if (or (equal? path "/.well-known/openid-configuration")
+ (equal? path (uri-path jwks-uri))
+ (equal? path (uri-path authorization-endpoint-uri))
+ (equal? path (uri-path token-endpoint-uri)))
+ (identity-provider-handler request request-body)
+ (resource-handler request request-body)))))
'http
(list #:port port)))))
(else
diff --git a/src/scm/webid-oidc/provider-confirmation.scm b/src/scm/webid-oidc/provider-confirmation.scm
index f767fee..1baf2f3 100644
--- a/src/scm/webid-oidc/provider-confirmation.scm
+++ b/src/scm/webid-oidc/provider-confirmation.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc provider-confirmation)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc fetch)
diff --git a/src/scm/webid-oidc/rdf-index.scm b/src/scm/webid-oidc/rdf-index.scm
index f756afa..b70dc9a 100644
--- a/src/scm/webid-oidc/rdf-index.scm
+++ b/src/scm/webid-oidc/rdf-index.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc rdf-index)
#:use-module (oop goops)
#:use-module (rdf rdf)
diff --git a/src/scm/webid-oidc/refresh-token.scm b/src/scm/webid-oidc/refresh-token.scm
index d2a7da6..f9ceada 100644
--- a/src/scm/webid-oidc/refresh-token.scm
+++ b/src/scm/webid-oidc/refresh-token.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc refresh-token)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
diff --git a/src/scm/webid-oidc/resource-server.scm b/src/scm/webid-oidc/resource-server.scm
index c69bc51..b5c1a48 100644
--- a/src/scm/webid-oidc/resource-server.scm
+++ b/src/scm/webid-oidc/resource-server.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc resource-server)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc oidc-configuration)
diff --git a/src/scm/webid-oidc/reverse-proxy.scm b/src/scm/webid-oidc/reverse-proxy.scm
index cc4d46a..f9caba6 100644
--- a/src/scm/webid-oidc/reverse-proxy.scm
+++ b/src/scm/webid-oidc/reverse-proxy.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc reverse-proxy)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
diff --git a/src/scm/webid-oidc/server/Makefile.am b/src/scm/webid-oidc/server/Makefile.am
index 6ef3dcf..7551ff9 100644
--- a/src/scm/webid-oidc/server/Makefile.am
+++ b/src/scm/webid-oidc/server/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
dist_serverwebidoidcmod_DATA += \
%reldir%/create.scm \
%reldir%/read.scm \
diff --git a/src/scm/webid-oidc/server/create.scm b/src/scm/webid-oidc/server/create.scm
index f354445..f77cb49 100644
--- a/src/scm/webid-oidc/server/create.scm
+++ b/src/scm/webid-oidc/server/create.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server create)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/server/delete.scm b/src/scm/webid-oidc/server/delete.scm
index edd23cb..b5fb3a9 100644
--- a/src/scm/webid-oidc/server/delete.scm
+++ b/src/scm/webid-oidc/server/delete.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server delete)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/server/precondition.scm b/src/scm/webid-oidc/server/precondition.scm
index 94c6ae1..6912a7a 100644
--- a/src/scm/webid-oidc/server/precondition.scm
+++ b/src/scm/webid-oidc/server/precondition.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server precondition)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/server/read.scm b/src/scm/webid-oidc/server/read.scm
index 895be46..6cd1a01 100644
--- a/src/scm/webid-oidc/server/read.scm
+++ b/src/scm/webid-oidc/server/read.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server read)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/server/resource/Makefile.am b/src/scm/webid-oidc/server/resource/Makefile.am
index efc41ce..e590de4 100644
--- a/src/scm/webid-oidc/server/resource/Makefile.am
+++ b/src/scm/webid-oidc/server/resource/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
dist_resourceserverwebidoidcmod_DATA += \
%reldir%/content.scm \
%reldir%/path.scm \
diff --git a/src/scm/webid-oidc/server/resource/content.scm b/src/scm/webid-oidc/server/resource/content.scm
index 2bbf4f0..29d8889 100644
--- a/src/scm/webid-oidc/server/resource/content.scm
+++ b/src/scm/webid-oidc/server/resource/content.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server resource content)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
diff --git a/src/scm/webid-oidc/server/resource/path.scm b/src/scm/webid-oidc/server/resource/path.scm
index f39f4b2..f1594bc 100644
--- a/src/scm/webid-oidc/server/resource/path.scm
+++ b/src/scm/webid-oidc/server/resource/path.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server resource path)
#:use-module (webid-oidc errors)
#:use-module ((webid-oidc stubs) #:prefix stubs:)
diff --git a/src/scm/webid-oidc/server/resource/wac.scm b/src/scm/webid-oidc/server/resource/wac.scm
index 47748ca..073d77b 100644
--- a/src/scm/webid-oidc/server/resource/wac.scm
+++ b/src/scm/webid-oidc/server/resource/wac.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server resource wac)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/server/update.scm b/src/scm/webid-oidc/server/update.scm
index 715c4ed..2e811ae 100644
--- a/src/scm/webid-oidc/server/update.scm
+++ b/src/scm/webid-oidc/server/update.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc server update)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc server resource path)
diff --git a/src/scm/webid-oidc/stubs.scm b/src/scm/webid-oidc/stubs.scm
index 3ec40a8..0c6f0bc 100644
--- a/src/scm/webid-oidc/stubs.scm
+++ b/src/scm/webid-oidc/stubs.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc stubs)
#:use-module (webid-oidc config)
#:use-module (webid-oidc errors)
diff --git a/src/scm/webid-oidc/testing.scm b/src/scm/webid-oidc/testing.scm
index aecb2a3..f6a5b16 100644
--- a/src/scm/webid-oidc/testing.scm
+++ b/src/scm/webid-oidc/testing.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc testing)
#:use-module (webid-oidc stubs)
#:use-module (webid-oidc errors))
diff --git a/src/scm/webid-oidc/token-endpoint.scm b/src/scm/webid-oidc/token-endpoint.scm
index 422bac6..95681bb 100644
--- a/src/scm/webid-oidc/token-endpoint.scm
+++ b/src/scm/webid-oidc/token-endpoint.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define-module (webid-oidc token-endpoint)
#:use-module (webid-oidc errors)
#:use-module (webid-oidc authorization-code)
diff --git a/src/utilities.h b/src/utilities.h
index c07265e..1672cb2 100644
--- a/src/utilities.h
+++ b/src/utilities.h
@@ -1,3 +1,21 @@
+/*
+ webid-oidc, implementation of the Solid specification
+ Copyright (C) 2020, 2021 Vivien Kraus
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+*/
+
#ifndef H_UTILITIES_INCLUDED
#define H_UTILITIES_INCLUDED
diff --git a/src/webid-oidc b/src/webid-oidc
index 67affe4..765f62c 100755
--- a/src/webid-oidc
+++ b/src/webid-oidc
@@ -2,6 +2,22 @@
--no-auto-compile -s
!#
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc program))
(main)
diff --git a/src/webid-oidc-client-service b/src/webid-oidc-client-service
index 1139abd..82489dd 100755
--- a/src/webid-oidc-client-service
+++ b/src/webid-oidc-client-service
@@ -2,6 +2,22 @@
--no-auto-compile -s
!#
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client))
(main-server)
diff --git a/src/webid-oidc-example-app b/src/webid-oidc-example-app
index ebf2da8..efa22a0 100755
--- a/src/webid-oidc-example-app
+++ b/src/webid-oidc-example-app
@@ -2,6 +2,22 @@
--no-auto-compile -s
!#
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc example-app))
(main)
diff --git a/src/webid-oidc-hello b/src/webid-oidc-hello
index b19481f..ce169d4 100644..100755
--- a/src/webid-oidc-hello
+++ b/src/webid-oidc-hello
@@ -2,6 +2,22 @@
--no-auto-compile -s
!#
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc hello-world))
(format (current-error-port) "Logging to hello.log and hello.err.\n")
diff --git a/src/webid-oidc-issuer b/src/webid-oidc-issuer
index 6dd2960..aedd383 100755
--- a/src/webid-oidc-issuer
+++ b/src/webid-oidc-issuer
@@ -2,6 +2,22 @@
--no-auto-compile -s
!#
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc identity-provider))
(main)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 1a6242d..dfcbefe 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,3 +1,19 @@
+# webid-oidc, implementation of the Solid specification
+# Copyright (C) 2020, 2021 Vivien Kraus
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
TESTS = %reldir%/load-library.scm \
%reldir%/base64-ok.scm \
%reldir%/base64-error.scm \
diff --git a/tests/acl-with-group.scm b/tests/acl-with-group.scm
index 210cc21..3e715d9 100644
--- a/tests/acl-with-group.scm
+++ b/tests/acl-with-group.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(define (http-get uri)
(unless (equal? uri
(string->uri "https://group-server.example.com/the#group"))
diff --git a/tests/acl.scm b/tests/acl.scm
index 4249e6e..8263339 100644
--- a/tests/acl.scm
+++ b/tests/acl.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc server resource wac)
(webid-oidc server resource content)
(webid-oidc server resource path)
diff --git a/tests/authorization-endpoint-get-form.scm b/tests/authorization-endpoint-get-form.scm
index d6fabe9..d71d534 100644
--- a/tests/authorization-endpoint-get-form.scm
+++ b/tests/authorization-endpoint-get-form.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc authorization-endpoint)
(webid-oidc jwk)
(webid-oidc testing)
diff --git a/tests/authorization-endpoint-no-args.scm b/tests/authorization-endpoint-no-args.scm
index 04ab575..bd24fa2 100644
--- a/tests/authorization-endpoint-no-args.scm
+++ b/tests/authorization-endpoint-no-args.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc authorization-endpoint)
(webid-oidc jwk)
(webid-oidc testing)
diff --git a/tests/authorization-endpoint-submit-form.scm b/tests/authorization-endpoint-submit-form.scm
index 156bf4e..90de696 100644
--- a/tests/authorization-endpoint-submit-form.scm
+++ b/tests/authorization-endpoint-submit-form.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc authorization-endpoint)
(webid-oidc authorization-code)
(webid-oidc client-manifest)
diff --git a/tests/base64-error.scm b/tests/base64-error.scm
index 096e1e8..21ef7a6 100644
--- a/tests/base64-error.scm
+++ b/tests/base64-error.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules
(webid-oidc testing)
((webid-oidc stubs) #:prefix stubs:)
diff --git a/tests/base64-ok.scm b/tests/base64-ok.scm
index 724f2db..efd937f 100644
--- a/tests/base64-ok.scm
+++ b/tests/base64-ok.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules
(webid-oidc testing)
((webid-oidc stubs) #:prefix stubs:)
diff --git a/tests/cache-revalidate.scm b/tests/cache-revalidate.scm
index 29cc038..caa6e3e 100644
--- a/tests/cache-revalidate.scm
+++ b/tests/cache-revalidate.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc cache)
(webid-oidc testing)
(web uri)
diff --git a/tests/cache-valid.scm b/tests/cache-valid.scm
index eda831e..cf5c0f1 100644
--- a/tests/cache-valid.scm
+++ b/tests/cache-valid.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc cache)
(webid-oidc testing)
(web uri)
diff --git a/tests/client-authorization.scm b/tests/client-authorization.scm
index ed02edf..af95893 100644
--- a/tests/client-authorization.scm
+++ b/tests/client-authorization.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client)
(webid-oidc testing)
((webid-oidc stubs) #:prefix stubs:)
diff --git a/tests/client-manifest-fraudulent.scm b/tests/client-manifest-fraudulent.scm
index c12643e..96cabf4 100644
--- a/tests/client-manifest-fraudulent.scm
+++ b/tests/client-manifest-fraudulent.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client-manifest)
(webid-oidc cache)
(webid-oidc testing)
diff --git a/tests/client-manifest-not-modified.scm b/tests/client-manifest-not-modified.scm
index 440c9b8..26f4852 100644
--- a/tests/client-manifest-not-modified.scm
+++ b/tests/client-manifest-not-modified.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client)
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/client-manifest-public.scm b/tests/client-manifest-public.scm
index e285782..1e2c628 100644
--- a/tests/client-manifest-public.scm
+++ b/tests/client-manifest-public.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client-manifest)
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/client-manifest.scm b/tests/client-manifest.scm
index cee586c..12453ce 100644
--- a/tests/client-manifest.scm
+++ b/tests/client-manifest.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client-manifest)
(webid-oidc cache)
(webid-oidc testing)
diff --git a/tests/client-token.scm b/tests/client-token.scm
index 02f5ec7..934cf2c 100644
--- a/tests/client-token.scm
+++ b/tests/client-token.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc client)
(webid-oidc testing)
(webid-oidc token-endpoint)
diff --git a/tests/crud.scm b/tests/crud.scm
index 6eb1bfe..6f5a3c0 100644
--- a/tests/crud.scm
+++ b/tests/crud.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc server create)
(webid-oidc server read)
(webid-oidc server update)
diff --git a/tests/dpop-proof-iat-in-future.scm b/tests/dpop-proof-iat-in-future.scm
index 7444a02..4f167ca 100644
--- a/tests/dpop-proof-iat-in-future.scm
+++ b/tests/dpop-proof-iat-in-future.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-iat-too-late.scm b/tests/dpop-proof-iat-too-late.scm
index 1a56f22..e1b7a47 100644
--- a/tests/dpop-proof-iat-too-late.scm
+++ b/tests/dpop-proof-iat-too-late.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-replay.scm b/tests/dpop-proof-replay.scm
index b527dce..132a150 100644
--- a/tests/dpop-proof-replay.scm
+++ b/tests/dpop-proof-replay.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-valid.scm b/tests/dpop-proof-valid.scm
index a05a223..52da33b 100644
--- a/tests/dpop-proof-valid.scm
+++ b/tests/dpop-proof-valid.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-wrong-htm.scm b/tests/dpop-proof-wrong-htm.scm
index 4531a44..eaedfe5 100644
--- a/tests/dpop-proof-wrong-htm.scm
+++ b/tests/dpop-proof-wrong-htm.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-wrong-htu.scm b/tests/dpop-proof-wrong-htu.scm
index f8ecb29..c65d1fc 100644
--- a/tests/dpop-proof-wrong-htu.scm
+++ b/tests/dpop-proof-wrong-htu.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/dpop-proof-wrong-key.scm b/tests/dpop-proof-wrong-key.scm
index 9ea98ee..ae6f177 100644
--- a/tests/dpop-proof-wrong-key.scm
+++ b/tests/dpop-proof-wrong-key.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc dpop-proof)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/hash-ok.scm b/tests/hash-ok.scm
index 26384f8..322bae1 100644
--- a/tests/hash-ok.scm
+++ b/tests/hash-ok.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules
(webid-oidc testing)
((webid-oidc stubs) #:prefix stubs:)
diff --git a/tests/hash-unsupported.scm b/tests/hash-unsupported.scm
index c52959a..3924202 100644
--- a/tests/hash-unsupported.scm
+++ b/tests/hash-unsupported.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/http-link.scm b/tests/http-link.scm
index a7e1d6c..a16c353 100644
--- a/tests/http-link.scm
+++ b/tests/http-link.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc http-link)
(webid-oidc testing)
(web http)
diff --git a/tests/jkt.scm b/tests/jkt.scm
index ca20f89..1741d7d 100644
--- a/tests/jkt.scm
+++ b/tests/jkt.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing))
diff --git a/tests/jwk-kty-ec-correct.scm b/tests/jwk-kty-ec-correct.scm
index 04306eb..b72669c 100644
--- a/tests/jwk-kty-ec-correct.scm
+++ b/tests/jwk-kty-ec-correct.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing))
diff --git a/tests/jwk-kty-ec-incorrect.scm b/tests/jwk-kty-ec-incorrect.scm
index 5ada4f2..3ca1283 100644
--- a/tests/jwk-kty-ec-incorrect.scm
+++ b/tests/jwk-kty-ec-incorrect.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing)
(webid-oidc errors))
diff --git a/tests/jwk-kty-rsa-correct.scm b/tests/jwk-kty-rsa-correct.scm
index f6d42ad..27140fe 100644
--- a/tests/jwk-kty-rsa-correct.scm
+++ b/tests/jwk-kty-rsa-correct.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing))
diff --git a/tests/jwk-kty-rsa-incorrect.scm b/tests/jwk-kty-rsa-incorrect.scm
index 11ab368..fe81c1d 100644
--- a/tests/jwk-kty-rsa-incorrect.scm
+++ b/tests/jwk-kty-rsa-incorrect.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing)
(webid-oidc errors))
diff --git a/tests/jwk-public.scm b/tests/jwk-public.scm
index d82c80b..4830845 100644
--- a/tests/jwk-public.scm
+++ b/tests/jwk-public.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc jwk)
(webid-oidc testing))
diff --git a/tests/jwks-get.scm b/tests/jwks-get.scm
index 4584c8d..66174a2 100644
--- a/tests/jwks-get.scm
+++ b/tests/jwks-get.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc jwk)
(webid-oidc testing)
(webid-oidc cache)
diff --git a/tests/jws.scm b/tests/jws.scm
index 502daf2..cfd57b1 100644
--- a/tests/jws.scm
+++ b/tests/jws.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc jws)
(webid-oidc testing))
diff --git a/tests/load-library.scm b/tests/load-library.scm
index 196e273..8e30c03 100644
--- a/tests/load-library.scm
+++ b/tests/load-library.scm
@@ -1 +1,17 @@
-(use-modules (webid-oidc))
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+(use-modules (webid-oidc stubs))
diff --git a/tests/oidc-configuration.scm b/tests/oidc-configuration.scm
index 6c613b3..7f02941 100644
--- a/tests/oidc-configuration.scm
+++ b/tests/oidc-configuration.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc oidc-configuration)
(webid-oidc jwk)
(webid-oidc cache)
diff --git a/tests/preconditions.scm b/tests/preconditions.scm
index 01cbd1c..072b834 100644
--- a/tests/preconditions.scm
+++ b/tests/preconditions.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc server precondition)
(webid-oidc errors)
(webid-oidc testing)
diff --git a/tests/provider-confirmation.scm b/tests/provider-confirmation.scm
index 44825e3..4a240e2 100644
--- a/tests/provider-confirmation.scm
+++ b/tests/provider-confirmation.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc provider-confirmation)
(webid-oidc testing)
(web uri)
diff --git a/tests/random.scm b/tests/random.scm
index 9b85b15..8b27a66 100644
--- a/tests/random.scm
+++ b/tests/random.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing))
diff --git a/tests/refresh-token-with-wrong-key.scm b/tests/refresh-token-with-wrong-key.scm
index 2609e1e..38537ec 100644
--- a/tests/refresh-token-with-wrong-key.scm
+++ b/tests/refresh-token-with-wrong-key.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc refresh-token)
(webid-oidc testing)
(webid-oidc jwk)
diff --git a/tests/refresh-token.scm b/tests/refresh-token.scm
index 1586d4f..3bcb27f 100644
--- a/tests/refresh-token.scm
+++ b/tests/refresh-token.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc refresh-token)
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/resource-server.scm b/tests/resource-server.scm
index 52a08b7..1a8e30a 100644
--- a/tests/resource-server.scm
+++ b/tests/resource-server.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc provider-confirmation)
(webid-oidc jti)
(webid-oidc jwk)
diff --git a/tests/server-content.scm b/tests/server-content.scm
index c546dea..24ecfe9 100644
--- a/tests/server-content.scm
+++ b/tests/server-content.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc server resource content)
(webid-oidc fetch)
(webid-oidc testing)
diff --git a/tests/server-path.scm b/tests/server-path.scm
index f45fb38..b2e1180 100644
--- a/tests/server-path.scm
+++ b/tests/server-path.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc server resource content)
(webid-oidc server resource path)
(webid-oidc fetch)
diff --git a/tests/token-endpoint-issue.scm b/tests/token-endpoint-issue.scm
index 706b908..d14a137 100644
--- a/tests/token-endpoint-issue.scm
+++ b/tests/token-endpoint-issue.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc token-endpoint)
(webid-oidc authorization-code)
(webid-oidc dpop-proof)
diff --git a/tests/token-endpoint-refresh.scm b/tests/token-endpoint-refresh.scm
index 293d656..cd584ab 100644
--- a/tests/token-endpoint-refresh.scm
+++ b/tests/token-endpoint-refresh.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc token-endpoint)
(webid-oidc authorization-code)
(webid-oidc refresh-token)
diff --git a/tests/too-many-refresh-tokens.scm b/tests/too-many-refresh-tokens.scm
index cd1cbdc..3926da4 100644
--- a/tests/too-many-refresh-tokens.scm
+++ b/tests/too-many-refresh-tokens.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc refresh-token)
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/unknown-client-locale.scm b/tests/unknown-client-locale.scm
index fcd84da..c2fd4c2 100644
--- a/tests/unknown-client-locale.scm
+++ b/tests/unknown-client-locale.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc authorization-page)
(webid-oidc testing)
(webid-oidc errors)
diff --git a/tests/verification-failed.scm b/tests/verification-failed.scm
index b580caa..f4c22de 100644
--- a/tests/verification-failed.scm
+++ b/tests/verification-failed.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc errors)
(webid-oidc testing))
diff --git a/tests/verify.scm b/tests/verify.scm
index e6dc2fd..6b41283 100644
--- a/tests/verify.scm
+++ b/tests/verify.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (webid-oidc stubs)
(webid-oidc testing))
diff --git a/update-channel.scm b/update-channel.scm
index bc19332..5e0d9fd 100644
--- a/update-channel.scm
+++ b/update-channel.scm
@@ -1,3 +1,19 @@
+;; webid-oidc, implementation of the Solid specification
+;; Copyright (C) 2020, 2021 Vivien Kraus
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU Affero General Public License as
+;; published by the Free Software Foundation, either version 3 of the
+;; License, or (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU Affero General Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
(use-modules (gnu packages bash))
(use-modules (gnu packages base))
(use-modules (gnu packages tex))