[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-anastasis] branch master updated: -fix i18n, add some licensing h
From: |
gnunet |
Subject: |
[taler-anastasis] branch master updated: -fix i18n, add some licensing headers to JSON resource files, GNUify |
Date: |
Fri, 30 Jul 2021 09:58:36 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository anastasis.
The following commit(s) were added to refs/heads/master by this push:
new 3f717ff -fix i18n, add some licensing headers to JSON resource files,
GNUify
3f717ff is described below
commit 3f717ff8febd09222260b07b90568e790826f96e
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Fri Jul 30 09:58:33 2021 +0200
-fix i18n, add some licensing headers to JSON resource files, GNUify
---
ChangeLog | 3 +
README | 10 +-
contrib/gana | 2 +-
contrib/provider-list.json | 2 +
contrib/redux.al.json | 14 +-
contrib/redux.be.json | 20 +-
contrib/redux.ch.json | 20 +-
contrib/redux.countries.json | 2 +
contrib/redux.cz.json | 14 +-
contrib/redux.de.json | 23 +-
contrib/redux.dk.json | 14 +-
contrib/redux.in.json | 20 +-
contrib/redux.it.json | 14 +-
contrib/redux.jp.json | 20 +-
contrib/redux.sk.json | 14 +-
contrib/redux.us.json | 23 +-
contrib/redux.xx.json | 18 +-
contrib/redux.xy.json | 18 +-
doc/anastasis.texi | 918 +++++++++++++++++++++----------------------
19 files changed, 498 insertions(+), 671 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 4eb85c4..1c4cf10 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+Fri 30 Jul 2021 09:56:51 AM CEST
+ Preparing for first release. -CG
+
Mon 05 Apr 2021 08:09:30 PM CEST
Add gettext support to build system. -CG
diff --git a/README b/README
index e038984..7a09d7b 100644
--- a/README
+++ b/README
@@ -1,6 +1,6 @@
-=========
-ANASTASIS
-=========
+=============
+GNU ANASTASIS
+=============
This package includes the Anastasis core logic. The code is released
under the GNU Affero General Public License (v3 or later). See
@@ -9,8 +9,8 @@ COPYING for details.
Description
===========
-Anastasis is a key backup and recovery tool. This package
-includes the backend run by the Anastasis providers as
+GNU Anastasis is a key backup and recovery tool from the GNU project.
+This package includes the backend run by the Anastasis providers as
well as libraries for clients and a command-line interface.
Dependencies
diff --git a/contrib/gana b/contrib/gana
index 65b3235..0f1eb85 160000
--- a/contrib/gana
+++ b/contrib/gana
@@ -1 +1 @@
-Subproject commit 65b32359b300f5369eff62fceb5001e609c2f339
+Subproject commit 0f1eb8555b89056fe62e093211e53a1f9ba85d56
diff --git a/contrib/provider-list.json b/contrib/provider-list.json
index 8d6c95e..37200a4 100644
--- a/contrib/provider-list.json
+++ b/contrib/provider-list.json
@@ -1,4 +1,6 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"anastasis_provider": [
{
"url" : "http://localhost:8086/",
diff --git a/contrib/redux.al.json b/contrib/redux.al.json
index ee0a5c4..bb4360e 100644
--- a/contrib/redux.al.json
+++ b/contrib/redux.al.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.be.json b/contrib/redux.be.json
index 5c733c9..821a3eb 100644
--- a/contrib/redux.be.json
+++ b/contrib/redux.be.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.ch.json b/contrib/redux.ch.json
index b18b4c5..48e8e7a 100644
--- a/contrib/redux.ch.json
+++ b/contrib/redux.ch.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE":"Vollstaendiger Name",
- "de_CH":"Vollstaendiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_CH":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.countries.json b/contrib/redux.countries.json
index 7902578..aaaf134 100644
--- a/contrib/redux.countries.json
+++ b/contrib/redux.countries.json
@@ -1,4 +1,6 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"countries": [
{
"code" : "al",
diff --git a/contrib/redux.cz.json b/contrib/redux.cz.json
index d5967a1..e7118a8 100644
--- a/contrib/redux.cz.json
+++ b/contrib/redux.cz.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.de.json b/contrib/redux.de.json
index 063116f..862a463 100644
--- a/contrib/redux.de.json
+++ b/contrib/redux.de.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
@@ -45,7 +29,6 @@
"label": "Taxpayer identification number",
"label_i18n":{
"de_DE": "Steuerliche Identifikationsnummer",
- "de_CH": "Steuerliche Identifikationsnummer",
"en": "German taxpayer identification number"
},
"widget": "anastasis_gtk_ia_tax_de",
@@ -59,8 +42,6 @@
"label": "Social security number",
"label_i18n":{
"de_DE": "Deutsche Sozialversicherungsnummer",
- "de_CH": "Deutsche Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale allemande",
"en": "German Social security number"
},
"widget": "anastasis_gtk_ia_ssn_de",
diff --git a/contrib/redux.dk.json b/contrib/redux.dk.json
index 6d43bc1..29c7c6c 100644
--- a/contrib/redux.dk.json
+++ b/contrib/redux.dk.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.in.json b/contrib/redux.in.json
index c296de9..a53035c 100644
--- a/contrib/redux.in.json
+++ b/contrib/redux.in.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.it.json b/contrib/redux.it.json
index e4d0945..f744497 100644
--- a/contrib/redux.it.json
+++ b/contrib/redux.it.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.jp.json b/contrib/redux.jp.json
index bd658e2..2a80cdf 100644
--- a/contrib/redux.jp.json
+++ b/contrib/redux.jp.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.sk.json b/contrib/redux.sk.json
index 1ab0c9a..e2acef7 100644
--- a/contrib/redux.sk.json
+++ b/contrib/redux.sk.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
diff --git a/contrib/redux.us.json b/contrib/redux.us.json
index 28a3b2b..17e7556 100644
--- a/contrib/redux.us.json
+++ b/contrib/redux.us.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,12 +20,6 @@
"type": "string",
"name": "birthplace",
"label": "Birthplace",
- "label_i18n":{
- "de_CH":"Geburtsort",
- "de_CH":"Geburtsort",
- "fr":"Place de naissance",
- "en":"Birthplace"
- },
"widget": "anastasis_gtk_ia_birthplace",
"uuid" : "4c822e8e-89c6-11eb-95c4-8b077ad8489f"
},
@@ -44,9 +28,6 @@
"name": "social_security_number",
"label": "Social security number",
"label_i18n":{
- "de_DE": "US Sozialversicherungsnummer",
- "de_CH": "US Sozialversicherungsnummer",
- "fr": "Numéro de sécurité sociale (EU)",
"en": "US Social security number"
},
"widget": "anastasis_gtk_ia_ssn_us",
diff --git a/contrib/redux.xx.json b/contrib/redux.xx.json
index b6146e7..b28af81 100644
--- a/contrib/redux.xx.json
+++ b/contrib/redux.xx.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,10 +20,6 @@
"type": "string",
"name": "sq_number",
"label": "Square number",
- "label_i18n":{
- "de_DE":"Quadratzahl",
- "de_CH":"Quadratzahl"
- },
"widget": "anastasis_gtk_xx_square",
"uuid" : "ed790bca-89bf-11eb-96f2-233996cf644e",
"validation-regex": "^[0-9]+$",
diff --git a/contrib/redux.xy.json b/contrib/redux.xy.json
index d7c32d1..2091d9a 100644
--- a/contrib/redux.xy.json
+++ b/contrib/redux.xy.json
@@ -1,15 +1,11 @@
{
+ "license": "GPLv3+",
+ "SPDX-License-Identifier": "GPL3.0-or-later",
"required_attributes": [
{
"type": "string",
"name": "full_name",
"label": "Full name",
- "label_i18n":{
- "de_DE": "Vollständiger Name",
- "de_CH": "Vollständiger Name",
- "fr": "Nom complet",
- "en": "Full name"
- },
"widget": "anastasis_gtk_ia_full_name",
"uuid" : "9e8f463f-575f-42cb-85f3-759559997331"
},
@@ -17,12 +13,6 @@
"type": "date",
"name": "birthdate",
"label": "Birthdate",
- "label_i18n":{
- "de_DE":"Geburtsdatum",
- "de_CH":"Geburtsdatum",
- "fr":"Date de naissance",
- "en":"Birthdate"
- },
"widget": "anastasis_gtk_ia_birthdate",
"uuid" : "83d655c7-bdb6-484d-904e-80c1058c8854"
},
@@ -30,10 +20,6 @@
"type": "string",
"name": "prime_number",
"label": "Prime number",
- "label_i18n":{
- "de_DE":"Primzahl",
- "de_CH":"Primzahl"
- },
"widget": "anastasis_gtk_xx_prime",
"uuid" : "39190a95-cacb-4412-8bae-1f7da3f980b4",
"validation-regex": "^[0-9]+$",
diff --git a/doc/anastasis.texi b/doc/anastasis.texi
index d04c2d6..a5d8b11 100644
--- a/doc/anastasis.texi
+++ b/doc/anastasis.texi
@@ -21,7 +21,7 @@
@copying
@quotation
-Anastasis 0.0.0pre0, Jul 18, 2021
+GNU Anastasis 0.0.0, Jul 30, 2021
Anastasis SARL
@@ -50,21 +50,21 @@ Copyright @copyright{} 2020-2021 Anastasis SARL (AGPLv3+ or
GFDL 1.3+)
@anchor{index doc}@anchor{0}
@c This file is part of GNU Anastasis.
@c Copyright (C) 2020-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
-Anastasis is Free Software protocol and implementation that allows
+GNU Anastasis is Free Software protocol and implementation that allows
users to securely deposit @strong{core secrets} with an open set of escrow
providers and to recover these secrets if their original copies are
lost.
@@ -93,245 +93,245 @@ problem to encrypting the @strong{core secret} using some
other key
material in possession of the user.
@menu
-* Documentation Overview::
+* Documentation Overview::
@detailmenu
--- The Detailed Node Listing ---
Documentation Overview
-* Introduction::
-* Installation::
-* Configuration::
-* Cryptography::
-* REST API::
-* Reducer API::
-* Authentication Methods::
-* DB Schema::
-* Design Documents::
-* Anastasis licensing information::
-* Man Pages::
-* Complete Index::
-* GNU Free Documentation License::
+* Introduction::
+* Installation::
+* Configuration::
+* Cryptography::
+* REST API::
+* Reducer API::
+* Authentication Methods::
+* DB Schema::
+* Design Documents::
+* Anastasis licensing information::
+* Man Pages::
+* Complete Index::
+* GNU Free Documentation License::
Introduction
-* User Identifiers::
-* Adversary models::
-* The recovery document::
+* User Identifiers::
+* Adversary models::
+* The recovery document::
Installation
-* Installing from source::
-* Installing Anastasis binary packages on Debian::
-* Installing Anastasis binary packages on Ubuntu::
+* Installing from source::
+* Installing Anastasis binary packages on Debian::
+* Installing Anastasis binary packages on Ubuntu::
Installing from source
-* Installing GNUnet::
-* Installing the Taler Exchange::
-* Installing the Taler Merchant::
-* Installing Anastasis::
-* Installing GNUnet-gtk::
-* Installing Anastasis-gtk::
+* Installing GNUnet::
+* Installing the Taler Exchange::
+* Installing the Taler Merchant::
+* Installing Anastasis::
+* Installing GNUnet-gtk::
+* Installing Anastasis-gtk::
Installing Anastasis binary packages on Debian
-* Installing the graphical front-end::
-* Installing the backend::
+* Installing the graphical front-end::
+* Installing the backend::
Installing Anastasis binary packages on Ubuntu
-* Installing the graphical front-end: Installing the graphical front-end<2>.
-* Installing the backend: Installing the backend<2>.
+* Installing the graphical front-end: Installing the graphical front-end<2>.
+* Installing the backend: Installing the backend<2>.
Configuration
-* Configuration format::
-* Using anastasis-config::
+* Configuration format::
+* Using anastasis-config::
Cryptography
-* Key derivations::
-* Key Usage::
-* Availability Considerations::
+* Key derivations::
+* Key Usage::
+* Availability Considerations::
Key derivations
-* Verification::
-* Encryption::
+* Verification::
+* Encryption::
Key Usage
-* Encryption: Encryption<2>.
-* Signatures::
+* Encryption: Encryption<2>.
+* Signatures::
REST API
-* HTTP Request and Response::
-* Protocol Version Ranges::
-* Common encodings::
+* HTTP Request and Response::
+* Protocol Version Ranges::
+* Common encodings::
Common encodings
-* Binary Data::
-* Hash codes::
-* Large numbers::
-* Timestamps::
-* Integers::
-* Objects::
-* Keys::
-* Signatures: Signatures<2>.
-* Amounts::
-* Time::
-* Cryptographic primitives::
-* Signatures: Signatures<3>.
-* Receiving Configuration::
-* Receiving Terms of Service::
-* Manage policy::
-* Managing truth::
+* Binary Data::
+* Hash codes::
+* Large numbers::
+* Timestamps::
+* Integers::
+* Objects::
+* Keys::
+* Signatures: Signatures<2>.
+* Amounts::
+* Time::
+* Cryptographic primitives::
+* Signatures: Signatures<3>.
+* Receiving Configuration::
+* Receiving Terms of Service::
+* Manage policy::
+* Managing truth::
Reducer API
-* States::
-* Backup Reducer::
-* Recovery Reducer::
-* Reducer transitions::
+* States::
+* Backup Reducer::
+* Recovery Reducer::
+* Reducer transitions::
Reducer transitions
-* Initial state::
-* Common transitions::
-* Backup transitions::
-* Recovery transitions::
+* Initial state::
+* Common transitions::
+* Backup transitions::
+* Recovery transitions::
Authentication Methods
-* SMS (sms): SMS sms.
-* Email verification (email): Email verification email.
-* Video identification (vid): Video identification vid.
-* Security question (qa): Security question qa.
-* Snail mail verification (post): Snail mail verification post.
+* SMS (sms): SMS sms.
+* Email verification (email): Email verification email.
+* Video identification (vid): Video identification vid.
+* Security question (qa): Security question qa.
+* Snail mail verification (post): Snail mail verification post.
Design Documents
-* Design Doc 001; Anastasis User Experience: Design Doc 001 Anastasis User
Experience.
-* Template::
+* Design Doc 001; Anastasis User Experience: Design Doc 001 Anastasis User
Experience.
+* Template::
Design Doc 001: Anastasis User Experience
-* Summary::
-* Motivation::
-* Setup Steps::
-* Show Service Status After Setup::
-* Recovery Steps::
+* Summary::
+* Motivation::
+* Setup Steps::
+* Show Service Status After Setup::
+* Recovery Steps::
Setup Steps
-* Entry point; Settings: Entry point Settings.
-* Providing Identification::
-* Add Authentication Methods::
-* Confirm/Change Service Providers::
-* Defining Recovery Options::
-* Pay for Setup::
+* Entry point; Settings: Entry point Settings.
+* Providing Identification::
+* Add Authentication Methods::
+* Confirm/Change Service Providers::
+* Defining Recovery Options::
+* Pay for Setup::
Recovery Steps
-* Entry point; Settings: Entry point Settings<2>.
-* Providing Identification: Providing Identification<2>.
-* Select Authentication Challenge::
-* Payment::
-* Enter Challenge Response::
-* Success::
+* Entry point; Settings: Entry point Settings<2>.
+* Providing Identification: Providing Identification<2>.
+* Select Authentication Challenge::
+* Payment::
+* Enter Challenge Response::
+* Success::
Template
-* Summary: Summary<2>.
-* Motivation: Motivation<2>.
-* Requirements::
-* Proposed Solution::
-* Alternatives::
-* Drawbacks::
-* Discussion / Q&A::
+* Summary: Summary<2>.
+* Motivation: Motivation<2>.
+* Requirements::
+* Proposed Solution::
+* Alternatives::
+* Drawbacks::
+* Discussion / Q&A::
Anastasis licensing information
-* Anastasis (git;//git.taler.net/anastasis): Anastasis git //git taler
net/anastasis.
-* Anastasis-gtk (git;//git.taler.net/anastasis-gtk): Anastasis-gtk git //git
taler net/anastasis-gtk.
-* Documentation::
+* Anastasis (git;//git.taler.net/anastasis): Anastasis git //git taler
net/anastasis.
+* Anastasis-gtk (git;//git.taler.net/anastasis-gtk): Anastasis-gtk git //git
taler net/anastasis-gtk.
+* Documentation::
Anastasis (git://git.taler.net/anastasis)
-* Runtime dependencies::
+* Runtime dependencies::
Anastasis-gtk (git://git.taler.net/anastasis-gtk)
-* Runtime dependencies: Runtime dependencies<2>.
+* Runtime dependencies: Runtime dependencies<2>.
Man Pages
-* anastasis-config(1): anastasis-config 1.
-* anastasis-gtk(1): anastasis-gtk 1.
-* anastasis-httpd(1): anastasis-httpd 1.
-* anastasis-reducer(1): anastasis-reducer 1.
-* anastasis.conf(5): anastasis conf 5.
+* anastasis-config(1): anastasis-config 1.
+* anastasis-gtk(1): anastasis-gtk 1.
+* anastasis-httpd(1): anastasis-httpd 1.
+* anastasis-reducer(1): anastasis-reducer 1.
+* anastasis.conf(5): anastasis conf 5.
anastasis-config(1)
-* Synopsis::
-* Description::
-* See Also::
-* Bugs::
+* Synopsis::
+* Description::
+* See Also::
+* Bugs::
anastasis-gtk(1)
-* Synopsis: Synopsis<2>.
-* Description: Description<2>.
-* See Also: See Also<2>.
-* Bugs: Bugs<2>.
+* Synopsis: Synopsis<2>.
+* Description: Description<2>.
+* See Also: See Also<2>.
+* Bugs: Bugs<2>.
anastasis-httpd(1)
-* Synopsis: Synopsis<3>.
-* Description: Description<3>.
-* Signals::
-* See also::
-* Bugs: Bugs<3>.
+* Synopsis: Synopsis<3>.
+* Description: Description<3>.
+* Signals::
+* See also::
+* Bugs: Bugs<3>.
anastasis-reducer(1)
-* Synopsis: Synopsis<4>.
-* Description: Description<4>.
-* See Also: See Also<3>.
-* Bugs: Bugs<4>.
+* Synopsis: Synopsis<4>.
+* Description: Description<4>.
+* See Also: See Also<3>.
+* Bugs: Bugs<4>.
anastasis.conf(5)
-* Description: Description<5>.
-* SEE ALSO::
-* BUGS::
+* Description: Description<5>.
+* SEE ALSO::
+* BUGS::
Description
-* GLOBAL OPTIONS::
-* Authorization options::
-* Postgres database configuration::
+* GLOBAL OPTIONS::
+* Authorization options::
+* Postgres database configuration::
GNU Free Documentation License
-* 0. PREAMBLE: 0 PREAMBLE.
-* 1. APPLICABILITY AND DEFINITIONS: 1 APPLICABILITY AND DEFINITIONS.
-* 2. VERBATIM COPYING: 2 VERBATIM COPYING.
-* 3. COPYING IN QUANTITY: 3 COPYING IN QUANTITY.
-* 4. MODIFICATIONS: 4 MODIFICATIONS.
-* 5. COMBINING DOCUMENTS: 5 COMBINING DOCUMENTS.
-* 6. COLLECTIONS OF DOCUMENTS: 6 COLLECTIONS OF DOCUMENTS.
-* 7. AGGREGATION WITH INDEPENDENT WORKS: 7 AGGREGATION WITH INDEPENDENT WORKS.
-* 8. TRANSLATION: 8 TRANSLATION.
-* 9. TERMINATION: 9 TERMINATION.
-* 10. FUTURE REVISIONS OF THIS LICENSE: 10 FUTURE REVISIONS OF THIS LICENSE.
-* 11. RELICENSING: 11 RELICENSING.
-* ADDENDUM; How to use this License for your documents: ADDENDUM How to use
this License for your documents.
+* 0. PREAMBLE: 0 PREAMBLE.
+* 1. APPLICABILITY AND DEFINITIONS: 1 APPLICABILITY AND DEFINITIONS.
+* 2. VERBATIM COPYING: 2 VERBATIM COPYING.
+* 3. COPYING IN QUANTITY: 3 COPYING IN QUANTITY.
+* 4. MODIFICATIONS: 4 MODIFICATIONS.
+* 5. COMBINING DOCUMENTS: 5 COMBINING DOCUMENTS.
+* 6. COLLECTIONS OF DOCUMENTS: 6 COLLECTIONS OF DOCUMENTS.
+* 7. AGGREGATION WITH INDEPENDENT WORKS: 7 AGGREGATION WITH INDEPENDENT WORKS.
+* 8. TRANSLATION: 8 TRANSLATION.
+* 9. TERMINATION: 9 TERMINATION.
+* 10. FUTURE REVISIONS OF THIS LICENSE: 10 FUTURE REVISIONS OF THIS LICENSE.
+* 11. RELICENSING: 11 RELICENSING.
+* ADDENDUM; How to use this License for your documents: ADDENDUM How to use
this License for your documents.
@end detailmenu
@end menu
@@ -343,36 +343,36 @@ GNU Free Documentation License
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@menu
-* Introduction::
-* Installation::
-* Configuration::
-* Cryptography::
-* REST API::
-* Reducer API::
-* Authentication Methods::
-* DB Schema::
-* Design Documents::
-* Anastasis licensing information::
-* Man Pages::
-* Complete Index::
-* GNU Free Documentation License::
+* Introduction::
+* Installation::
+* Configuration::
+* Cryptography::
+* REST API::
+* Reducer API::
+* Authentication Methods::
+* DB Schema::
+* Design Documents::
+* Anastasis licensing information::
+* Man Pages::
+* Complete Index::
+* GNU Free Documentation License::
@end menu
@@ -386,9 +386,9 @@ concepts: user identifiers, our adversary model and the
role of the
recovery document.
@menu
-* User Identifiers::
-* Adversary models::
-* The recovery document::
+* User Identifiers::
+* Adversary models::
+* The recovery document::
@end menu
@@ -448,18 +448,18 @@ may be exposed to an adversary which monitors the user’s
network traffic).
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -475,43 +475,43 @@ exchange compilation.
@itemize -
-@item
+@item
libsqlite3 >= 3.16.2
-@item
+@item
GNU libunistring >= 0.9.3
-@item
+@item
libcurl >= 7.26 (or libgnurl >= 7.26)
-@item
+@item
libqrencode >= 4.0.0
-@item
+@item
GNU libgcrypt >= 1.6
-@item
+@item
libsodium >= 1.0
-@item
+@item
libargon2 >= 20171227
-@item
+@item
libjansson >= 2.7
-@item
+@item
Postgres >= 9.6, including libpq
-@item
+@item
GNU libmicrohttpd >= 0.9.71
-@item
+@item
GNUnet >= 0.14.0 (from source
tarball@footnote{http://ftpmirror.gnu.org/gnunet/})
-@item
+@item
GNU Taler exchange
-@item
+@item
GNU Taler merchant backend
@end itemize
@@ -519,9 +519,9 @@ Except for the last two, these are available in most
GNU/Linux distributions
and should just be installed using the respective package manager.
@menu
-* Installing from source::
-* Installing Anastasis binary packages on Debian::
-* Installing Anastasis binary packages on Ubuntu::
+* Installing from source::
+* Installing Anastasis binary packages on Debian::
+* Installing Anastasis binary packages on Ubuntu::
@end menu
@@ -534,12 +534,12 @@ The following instructions will show how to install
libgnunetutil and
the GNU Taler exchange from source.
@menu
-* Installing GNUnet::
-* Installing the Taler Exchange::
-* Installing the Taler Merchant::
-* Installing Anastasis::
-* Installing GNUnet-gtk::
-* Installing Anastasis-gtk::
+* Installing GNUnet::
+* Installing the Taler Exchange::
+* Installing the Taler Merchant::
+* Installing Anastasis::
+* Installing GNUnet-gtk::
+* Installing Anastasis-gtk::
@end menu
@@ -602,7 +602,7 @@ GNU Taler merchant has these additional dependencies:
@itemize -
-@item
+@item
libqrencode >= 4.0.0
@end itemize
@@ -803,7 +803,7 @@ into your keyring and update the package lists:
@end example
@cartouche
-@quotation Note
+@quotation Note
You may want to verify the correctness of the Taler Systems key out-of-band.
@end quotation
@end cartouche
@@ -812,8 +812,8 @@ Now your system is ready to install the official GNU Taler
binary packages
using apt.
@menu
-* Installing the graphical front-end::
-* Installing the backend::
+* Installing the graphical front-end::
+* Installing the backend::
@end menu
@@ -894,7 +894,7 @@ into your keyring and update the package lists:
@end example
@cartouche
-@quotation Note
+@quotation Note
You may want to verify the correctness of the Taler Systems key out-of-band.
@end quotation
@end cartouche
@@ -903,8 +903,8 @@ Now your system is ready to install the official GNU Taler
binary packages
using apt.
@menu
-* Installing the graphical front-end: Installing the graphical front-end<2>.
-* Installing the backend: Installing the backend<2>.
+* Installing the graphical front-end: Installing the graphical front-end<2>.
+* Installing the backend: Installing the backend<2>.
@end menu
@@ -955,18 +955,18 @@ need to install a Taler merchant backend via:
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -981,8 +981,8 @@ the @code{anastasis.conf(5)} chapter. This chapter only
describes the
configuration format.
@menu
-* Configuration format::
-* Using anastasis-config::
+* Configuration format::
+* Using anastasis-config::
@end menu
@@ -1116,18 +1116,18 @@ option.
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -1173,9 +1173,9 @@ user to recover the master key. A @strong{recovery
document} contains the
encrypted @strong{core secret}, a set of escrow methods and a set of policies.
@menu
-* Key derivations::
-* Key Usage::
-* Availability Considerations::
+* Key derivations::
+* Key Usage::
+* Availability Considerations::
@end menu
@@ -1217,8 +1217,8 @@ kdf_id := Argon2( identifier, server_salt, keysize )
@strong{keysize}: The desired output size of the KDF, here 32 bytes.
@menu
-* Verification::
-* Encryption::
+* Verification::
+* Encryption::
@end menu
@@ -1306,8 +1306,8 @@ The keys we have generated are then used to encrypt the
@strong{recovery documen
the @strong{key_share} of the user.
@menu
-* Encryption: Encryption<2>.
-* Signatures::
+* Encryption: Encryption<2>.
+* Signatures::
@end menu
@@ -1433,18 +1433,18 @@ capacity.
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -1455,26 +1455,26 @@ capacity.
@c This file is part of Anastasis
-@c
+@c
@c Copyright (C) 2014-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero Public License as published by the Free Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@menu
-* HTTP Request and Response::
-* Protocol Version Ranges::
-* Common encodings::
+* HTTP Request and Response::
+* Protocol Version Ranges::
+* Common encodings::
@end menu
@@ -1497,22 +1497,22 @@ handle the error as if an internal error (500) had been
returned.
Unless specified otherwise, HTTP requests that carry a message body must
have the content type @code{application/json}.
-@*Request Headers:
+@*Request Headers:
@itemize *
-@item
+@item
Content-Type@footnote{https://tools.ietf.org/html/rfc7231#section-3.1.1.5} –
application/json
@end itemize
@strong{Response:}
-@*Response Headers:
+@*Response Headers:
@itemize *
-@item
+@item
Content-Type@footnote{https://tools.ietf.org/html/rfc7231#section-3.1.1.5} –
application/json
@end itemize
@@ -1575,19 +1575,19 @@ down in the libtool version
format@footnote{https://www.gnu.org/software/libtool
A protocol version is a positive, non-zero integer. A protocol version range
consists of three components:
-@enumerate
+@enumerate
-@item
+@item
The @code{current} version. This is the latest version of the protocol
supported by the client or service.
-@item
+@item
The @code{revision} number. This value should usually not be interpreted by
the client/server, but serves
purely as a comment. Each time a service/client for a protocol is updated
while supporting the same
set of protocol versions, the revision should be increased.
In rare cases, the revision number can be used to work around unintended
breakage in deployed
versions of a service. This is discouraged and should only be used in
exceptional situations.
-@item
+@item
The @code{age} number. This non-zero integer identifies with how many
previous protocol versions this
implementation is compatible. An @code{age} of 0 implies that the
implementation only supports
the @code{current} protocol version. The @code{age} must be less or equal
than the @code{current} protocol version.
@@ -1606,27 +1606,27 @@ Examples:
@itemize *
-@item
+@item
“1” and “1” are compatible
-@item
+@item
“1” and “2” are @strong{incompatible}
-@item
+@item
“2:0:1” and “1:0:0” are compatible
-@item
+@item
“2:5:1” and “1:10:0” are compatible
-@item
+@item
“4:0:1” and “2:0:0” are @strong{incompatible}
-@item
+@item
“4:0:1” and “3:0:0” are compatible
@end itemize
@cartouche
-@quotation Note
+@quotation Note
Semantic versions@footnote{https://semver.org/} are not a good tool for this
job, as we concisely want to express
that the client/server supports the last @code{n} versions of the protocol.
Semantic versions don’t support this, and semantic version ranges are too
complex for this.
@@ -1634,14 +1634,14 @@ Semantic versions don’t support this, and semantic
version ranges are too comp
@end cartouche
@cartouche
-@quotation Warning
+@quotation Warning
A client doesn’t have one single protocol version range. Instead, it has
a protocol version range for each type of service it talks to.
@end quotation
@end cartouche
@cartouche
-@quotation Warning
+@quotation Warning
For privacy reasons, the protocol version range of a client should not be
sent to the service. Instead, the client should just use the two version
ranges
to decide whether it will talk to the service.
@@ -1656,22 +1656,22 @@ to decide whether it will talk to the service.
This section describes how certain types of values are represented throughout
the API.
@menu
-* Binary Data::
-* Hash codes::
-* Large numbers::
-* Timestamps::
-* Integers::
-* Objects::
-* Keys::
-* Signatures: Signatures<2>.
-* Amounts::
-* Time::
-* Cryptographic primitives::
-* Signatures: Signatures<3>.
-* Receiving Configuration::
-* Receiving Terms of Service::
-* Manage policy::
-* Managing truth::
+* Binary Data::
+* Hash codes::
+* Large numbers::
+* Timestamps::
+* Integers::
+* Objects::
+* Keys::
+* Signatures: Signatures<2>.
+* Amounts::
+* Time::
+* Cryptographic primitives::
+* Signatures: Signatures<3>.
+* Receiving Configuration::
+* Receiving Terms of Service::
+* Manage policy::
+* Managing truth::
@end menu
@@ -1807,21 +1807,21 @@ this allows accurate representation of monetary amounts.
The following constrains apply for a valid amount:
-@enumerate
+@enumerate
-@item
+@item
The @code{<Currency>} part must be at most 11 characters long and may only
consist
of ASCII letters (@code{a-zA-Z}).
-@item
+@item
The integer part of @code{<DecimalAmount>} may be at most 2^52.
-@item
+@item
The fractional part of @code{<DecimalAmount>} may contain at most 8 decimal
digits.
@end enumerate
@cartouche
-@quotation Note
+@quotation Note
“EUR:1.50” and “EUR:10” are valid amounts. These are all invalid amounts:
“A:B:1.5”, “EUR:4503599627370501.0”, “EUR:1.”, “EUR:.1”.
@end quotation
@end cartouche
@@ -2033,10 +2033,10 @@ plaintext is expected to contain:
@itemize *
-@item
+@item
the escrow policy
-@item
+@item
the separately encrypted master public key
@end itemize
@@ -2107,11 +2107,11 @@ minimum and maximum size limits.
@strong{Request}:
-@*Query Parameters:
+@*Query Parameters:
@itemize *
-@item
+@item
@code{storage_duration=YEARS} – For how many years from now would the client
like us to
store the recovery document? Defaults to 0 (that is, do
not extend / prolong existing storage contract).
@@ -2123,7 +2123,7 @@ may attempt to upload the latest backup again, as this
option will be checked before the @code{304 Not modified}
case.
-@item
+@item
@code{timeout_ms=NUMBER} – @emph{Optional.} If specified, the Anastasis
server will
wait up to @code{timeout_ms} milliseconds for completion of the payment before
sending the HTTP response. A client must never rely on this behavior, as the
@@ -2289,11 +2289,11 @@ If request has been seen before, the server should do
nothing, and otherwise sto
@strong{Request:}
-@*Query Parameters:
+@*Query Parameters:
@itemize *
-@item
+@item
@code{timeout_ms=NUMBER} – @emph{Optional.} If specified, the Anastasis
server will
wait up to @code{timeout_ms} milliseconds for completion of the payment before
sending the HTTP response. A client must never rely on this behavior, as the
@@ -2479,18 +2479,18 @@ interface KeyShare @{
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -2569,10 +2569,10 @@ above would look like following for the transition
@ref{5b,,action} @code{select
@end example
@menu
-* States::
-* Backup Reducer::
-* Recovery Reducer::
-* Reducer transitions::
+* States::
+* Backup Reducer::
+* Recovery Reducer::
+* Reducer transitions::
@end menu
@@ -2588,7 +2588,7 @@ Overall, the reducer knows the following states:
@itemize -
-@item
+@item
@table @asis
@@ -2597,7 +2597,7 @@ Overall, the reducer knows the following states:
this state, but the client may want to continue from a previous state.
@end table
-@item
+@item
@table @asis
@@ -2606,7 +2606,7 @@ this state, but the client may want to continue from a
previous state.
so that we can show a list of countries to choose from.
@end table
-@item
+@item
@table @asis
@@ -2616,7 +2616,7 @@ so that we can determine appropriate attributes,
currencies and Anastasis
providers.
@end table
-@item
+@item
@table @asis
@@ -2625,7 +2625,7 @@ providers.
attributes.
@end table
-@item
+@item
@table @asis
@@ -2634,13 +2634,13 @@ attributes.
during recovery.
@end table
-@item
+@item
@strong{POLICIES_REVIEWING}: The user should review the recovery policies.
-@item
+@item
@strong{SECRET_EDITING}: The user should edit the secret to be backed up.
-@item
+@item
@table @asis
@@ -2649,13 +2649,13 @@ during recovery.
with an authentication method.
@end table
-@item
+@item
@strong{POLICIES_PAYING}: The user needs to pay for storing the recovery
policy document.
-@item
+@item
@strong{BACKUP_FINISHED}: A backup has been successfully generated.
-@item
+@item
@table @asis
@@ -2664,7 +2664,7 @@ with an authentication method.
the secret that is to be recovered.
@end table
-@item
+@item
@table @asis
@@ -2673,13 +2673,13 @@ the secret that is to be recovered.
proceed with recovery.
@end table
-@item
+@item
@strong{CHALLENGE_PAYING}: The user needs to pay to proceed with the
authorization challenge.
-@item
+@item
@strong{CHALLENGE_SOLVING}: The user needs to solve the authorization
challenge.
-@item
+@item
@strong{RECOVERY_FINISHED}: The secret of the user has been recovered.
@end itemize
@end quotation
@@ -2691,22 +2691,22 @@ State names:
@itemize -
-@item
+@item
In SELECTING-states, the user has to choose one value out of a predefined set
of values (for example a continent out of a set of continents).
-@item
+@item
In COLLECTING-states, the user has to give certain values.
-@item
+@item
In EDITING-states, the user is free to choose which values he wants to give.
-@item
+@item
In REVEIWING-states, the user may make a few choices, but primarily is
expected to affirm something.
-@item
+@item
in PAYING-states, the user must make a payment.
-@item
+@item
in FINISHED-states, the operation has definitively concluded.
@end itemize
@end quotation
@@ -2757,10 +2757,10 @@ Note that we only show fields added by the reducer,
typically the previous
state is preserved to enable “back” transitions to function smoothly.
@menu
-* Initial state::
-* Common transitions::
-* Backup transitions::
-* Recovery transitions::
+* Initial state::
+* Common transitions::
+* Backup transitions::
+* Recovery transitions::
@end menu
@@ -3029,43 +3029,43 @@ that must be provided includes:
@itemize -
-@item
+@item
@strong{type}: The type of the attribute, for now only @code{string} and
@code{date} are
supported.
-@item
+@item
@strong{name}: The name of the attribute, this is the key under which the
attribute value must be provided later. The name must be unique per response.
-@item
+@item
@strong{label}: A human-readable description of the attribute in English.
Translated descriptions may be provided under @strong{label_i18n}.
-@item
+@item
@strong{uuid}: A UUID that uniquely identifies identical attributes across
different countries. Useful to preserve values should the user enter
some attributes, and then switch to another country. Note that
attributes must not be preserved if they merely have the same @strong{name},
only the @strong{uuid} will be identical if the semantics is identical.
-@item
+@item
@strong{widget}: An optional name of a widget that is known to nicely render
the attribute entry in user interfaces where named widgets are
supported.
-@item
+@item
@strong{validation-regex}: An optional extended POSIX regular expression
that is to be used to validate (string) inputs to ensure they are
well-formed.
-@item
+@item
@strong{validation-logic}: Optional name of a function that should be called
to validate the input. If the function is not known to the particular
client, the respective validation can be skipped (at the expense of
typos by users not being detected, possibly rendering secrets
irrecoverable).
-@item
+@item
@strong{optional}: Optional boolean field that, if @code{true}, indicates that
this attribute is not actually required but optional and users MAY leave
it blank in case they do not have the requested information. Used for
@@ -3083,39 +3083,39 @@ information is provided if the provider was
successfully contacted:
@itemize -
-@item
+@item
@strong{http_status}: HTTP status code, always @code{200} on success.
-@item
+@item
@strong{methods}: Array of authentication methods supported by this
provider. Includes the @strong{type} of the authentication method
and the @strong{usage_fee} (how much the user must pay for authorization
using this method during recovery).
-@item
+@item
@strong{annual_fee}: Fee the provider charges to store the recovery
policy for one year.
-@item
+@item
@strong{truth_upload_fee}: Fee the provider charges to store a key share.
-@item
+@item
@strong{liability_limit}: Amount the provider can be held liable for in
case a key share or recovery document cannot be recovered due to
provider failures.
-@item
+@item
@strong{currency}: Currency in which the provider wants to be paid,
will match all of the fees.
-@item
+@item
@strong{storage_limit_in_megabytes}: Maximum size of an upload (for
both recovery document and truth data) in megabytes.
-@item
+@item
@strong{provider_name}: Human-readable name of the provider’s business.
-@item
+@item
@strong{salt}: Salt value used by the provider, used to derive the
user’s identity at this provider. Should be unique per provider,
and must never change for a given provider. The salt is
@@ -3130,11 +3130,11 @@ If contacting the provider failed, the information
returned is:
@itemize -
-@item
+@item
@strong{http_status}: HTTP status code (if available, possibly 0 if
we did not even obtain an HTTP response).
-@item
+@item
@strong{error_code}: Taler error code, never 0.
@end itemize
@end quotation
@@ -3877,13 +3877,13 @@ Here, the fields have the following meaning:
@itemize -
-@item
+@item
@strong{http_status} is the HTTP status returned by the Anastasis provider.
-@item
+@item
@strong{upload_status} is the Taler error code return by the provider.
-@item
+@item
@strong{provider_url} is the base URL of the failing provider.
@end itemize
@end quotation
@@ -3974,21 +3974,21 @@ four mandatory fields:
@itemize -
-@item
+@item
@strong{uuid}: A unique identifier of the challenge; this is what the
UUIDs in the policies array refer to, but also this UUID may be
included in messages sent to the user. They allow the user to
distinguish different PIN/TANs should say the same phone number be
used for SMS-authentication with different providers.
-@item
+@item
@strong{cost}: This is the amount the Anastasis provider will charge
to allow the user to pass the challenge.
-@item
+@item
@strong{type}: This is the type of the challenge, as a string.
-@item
+@item
@strong{instructions}: Contains additional important hints for the user
to allow the user to satisfy the challenge. It typically includes
an abbreviated form of the contact information or the security
@@ -4099,7 +4099,7 @@ that applications must all handle. States other than
@code{solved} are:
@itemize -
-@item
+@item
@strong{payment}: Here, the user must pay for a challenge. An example would be:
@example
@@ -4123,7 +4123,7 @@ that applications must all handle. States other than
@code{solved} are:
@itemize -
-@item
+@item
@strong{body}: Here, the server provided an HTTP reply for
how to solve the challenge, but the reducer could not parse
them into a known format. A mime-type may be provided and may
@@ -4147,7 +4147,7 @@ help parse the details.
@}
@end example
-@item
+@item
@strong{hint}: Here, the server provided human-readable hint for
how to solve the challenge. Note that the @code{hint} provided this
time is from the Anastasis provider and may differ from the @code{instructions}
@@ -4170,7 +4170,7 @@ for the challenge under @code{recovery_information}:
@}
@end example
-@item
+@item
@strong{details}: Here, the server provided a detailed JSON status response
related to solving the challenge:
@@ -4201,7 +4201,7 @@ related to solving the challenge:
@itemize -
-@item
+@item
@strong{redirect}: To solve the challenge, the user must visit the indicated
Web site at @code{redirect_url}, for example to perform video authentication:
@end itemize
@@ -4228,7 +4228,7 @@ Web site at @code{redirect_url}, for example to perform
video authentication:
@itemize -
-@item
+@item
@strong{server-failure}: This indicates that the Anastasis provider encountered
a failure and recovery using this challenge cannot proceed at this time.
Examples for failures might be that the provider is unable to send SMS
@@ -4256,7 +4256,7 @@ the failure. The user may try again later or continue
with other challenges.
@itemize -
-@item
+@item
@strong{truth-unknown}: This indicates that the Anastasis provider is unaware
of
the specified challenge. This is typically a permanent failure, and user
interfaces should not allow users to re-try this challenge.
@@ -4281,7 +4281,7 @@ interfaces should not allow users to re-try this
challenge.
@itemize -
-@item
+@item
@strong{rate-limit-exceeded}:
@end itemize
@@ -4352,18 +4352,18 @@ formats are:
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -4388,11 +4388,11 @@ succeed with a 50% probability after about 200000 years
of attempts at the
maximum permissible frequency.
@menu
-* SMS (sms): SMS sms.
-* Email verification (email): Email verification email.
-* Video identification (vid): Video identification vid.
-* Security question (qa): Security question qa.
-* Snail mail verification (post): Snail mail verification post.
+* SMS (sms): SMS sms.
+* Email verification (email): Email verification email.
+* Video identification (vid): Video identification vid.
+* Security question (qa): Security question qa.
+* Snail mail verification (post): Snail mail verification post.
@end menu
@@ -4472,18 +4472,18 @@ the server responds with the requested encrypted key
share.
@c This file is part of Anastasis
@c Copyright (C) 2019-2021 Anastasis SARL
-@c
+@c
@c Anastasis is free software; you can redistribute it and/or modify it under
the
@c terms of the GNU Affero General Public License as published by the Free
Software
@c Foundation; either version 2.1, or (at your option) any later version.
-@c
+@c
@c Anastasis is distributed in the hope that it will be useful, but WITHOUT ANY
@c WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR
@c A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
details.
-@c
+@c
@c You should have received a copy of the GNU Affero General Public License
along with
@c Anastasis; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-@c
+@c
@c @author Christian Grothoff
@c @author Dominik Meister
@c @author Dennis Neufeld
@@ -4514,8 +4514,8 @@ new features while keeping track of the evolution of the
whole system
and protocol.
@menu
-* Design Doc 001; Anastasis User Experience: Design Doc 001 Anastasis User
Experience.
-* Template::
+* Design Doc 001; Anastasis User Experience: Design Doc 001 Anastasis User
Experience.
+* Template::
@end menu
@@ -4525,11 +4525,11 @@ and protocol.
@menu
-* Summary::
-* Motivation::
-* Setup Steps::
-* Show Service Status After Setup::
-* Recovery Steps::
+* Summary::
+* Motivation::
+* Setup Steps::
+* Show Service Status After Setup::
+* Recovery Steps::
@end menu
@@ -4560,12 +4560,12 @@ Access to the backup key is shared with escrow
providers that can be chosen by t
@image{graphviz-2d8d83202d2b7835498d2a5c18fa9e3cc05c4b6a,,,[graphviz],png}
@menu
-* Entry point; Settings: Entry point Settings.
-* Providing Identification::
-* Add Authentication Methods::
-* Confirm/Change Service Providers::
-* Defining Recovery Options::
-* Pay for Setup::
+* Entry point; Settings: Entry point Settings.
+* Providing Identification::
+* Add Authentication Methods::
+* Confirm/Change Service Providers::
+* Defining Recovery Options::
+* Pay for Setup::
@end menu
@@ -4702,12 +4702,12 @@ TODO
@image{graphviz-834e5a93329dec2ccdefd2a21bdfb5a02bad1c84,,,[graphviz],png}
@menu
-* Entry point; Settings: Entry point Settings<2>.
-* Providing Identification: Providing Identification<2>.
-* Select Authentication Challenge::
-* Payment::
-* Enter Challenge Response::
-* Success::
+* Entry point; Settings: Entry point Settings<2>.
+* Providing Identification: Providing Identification<2>.
+* Select Authentication Challenge::
+* Payment::
+* Enter Challenge Response::
+* Success::
@end menu
@@ -4798,13 +4798,13 @@ main wallet screen.
@menu
-* Summary: Summary<2>.
-* Motivation: Motivation<2>.
-* Requirements::
-* Proposed Solution::
-* Alternatives::
-* Drawbacks::
-* Discussion / Q&A::
+* Summary: Summary<2>.
+* Motivation: Motivation<2>.
+* Requirements::
+* Proposed Solution::
+* Alternatives::
+* Drawbacks::
+* Discussion / Q&A::
@end menu
@@ -4861,9 +4861,9 @@ All Anastasis components are generally released under the
Affero
GPL.
@menu
-* Anastasis (git;//git.taler.net/anastasis): Anastasis git //git taler
net/anastasis.
-* Anastasis-gtk (git;//git.taler.net/anastasis-gtk): Anastasis-gtk git //git
taler net/anastasis-gtk.
-* Documentation::
+* Anastasis (git;//git.taler.net/anastasis): Anastasis git //git taler
net/anastasis.
+* Anastasis-gtk (git;//git.taler.net/anastasis-gtk): Anastasis-gtk git //git
taler net/anastasis-gtk.
+* Documentation::
@end menu
@@ -4875,7 +4875,7 @@ GPL.
Anastasis core logic is under AGPL.
@menu
-* Runtime dependencies::
+* Runtime dependencies::
@end menu
@@ -4890,22 +4890,22 @@ project, and gives the copyright holder for each of
them:
@itemize *
-@item
+@item
libjansson: MIT License, AGPL- and LGPL-Compatible, owned by Petri Lehtinen
and other individuals
-@item
+@item
libgcrypt: LGPL, owned by Free Software Foundation
-@item
+@item
postgresql: PostgreSQL License, AGPL- and LGPL-Compatible, owned by The
PostgreSQL Global Development Group
-@item
+@item
libgnunetutil (in all of its variants): GPLv3+, owned by GNUnet e.V.
-@item
+@item
libgnunetjson: GPLv3+, GNUnet e.V.
-@item
+@item
GNU Taler: LGPLv3+ / GPLv3+ / AGPLv3+: owned by Taler Systems SA
@end itemize
@@ -4917,7 +4917,7 @@ GNU Taler: LGPLv3+ / GPLv3+ / AGPLv3+: owned by Taler
Systems SA
Anastasis-gtk is under AGPL.
@menu
-* Runtime dependencies: Runtime dependencies<2>.
+* Runtime dependencies: Runtime dependencies<2>.
@end menu
@@ -4932,25 +4932,25 @@ project, and gives the copyright holder for each of
them:
@itemize *
-@item
+@item
libjansson: MIT License, AGPL- and LGPL-Compatible, owned by Petri Lehtinen
and other individuals
-@item
+@item
libgcrypt: LGPL, owned by Free Software Foundation
-@item
+@item
postgresql: PostgreSQL License, AGPL- and LGPL-Compatible, owned by The
PostgreSQL Global Development Group
-@item
+@item
libgnunetutil (in all of its variants): GPLv3+, owned by GNUnet e.V.
-@item
+@item
libgnunetjson: GPLv3+, GNUnet e.V.
-@item
+@item
libgnunetgtk: GPLv3+, GNUnet e.V.
-@item
+@item
GNU Taler: LGPLv3+ / GPLv3+ / AGPLv3+: owned by Taler Systems SA
@end itemize
@@ -4967,11 +4967,11 @@ The documentation is licensed under the GNU Free
Documentation License Version 1
@menu
-* anastasis-config(1): anastasis-config 1.
-* anastasis-gtk(1): anastasis-gtk 1.
-* anastasis-httpd(1): anastasis-httpd 1.
-* anastasis-reducer(1): anastasis-reducer 1.
-* anastasis.conf(5): anastasis conf 5.
+* anastasis-config(1): anastasis-config 1.
+* anastasis-gtk(1): anastasis-gtk 1.
+* anastasis-httpd(1): anastasis-httpd 1.
+* anastasis-reducer(1): anastasis-reducer 1.
+* anastasis.conf(5): anastasis conf 5.
@end menu
@@ -4982,10 +4982,10 @@ The documentation is licensed under the GNU Free
Documentation License Version 1
@menu
-* Synopsis::
-* Description::
-* See Also::
-* Bugs::
+* Synopsis::
+* Description::
+* See Also::
+* Bugs::
@end menu
@@ -5115,10 +5115,10 @@ mail to <@email{contact@@anastasis.lu}>.
@menu
-* Synopsis: Synopsis<2>.
-* Description: Description<2>.
-* See Also: See Also<2>.
-* Bugs: Bugs<2>.
+* Synopsis: Synopsis<2>.
+* Description: Description<2>.
+* See Also: See Also<2>.
+* Bugs: Bugs<2>.
@end menu
@@ -5189,11 +5189,11 @@ mail to <@email{contact@@anastasis.lu}>.
@menu
-* Synopsis: Synopsis<3>.
-* Description: Description<3>.
-* Signals::
-* See also::
-* Bugs: Bugs<3>.
+* Synopsis: Synopsis<3>.
+* Description: Description<3>.
+* Signals::
+* See also::
+* Bugs: Bugs<3>.
@end menu
@@ -5273,10 +5273,10 @@ electronic mail to <@email{contact@@anastasis.lu}>.
@menu
-* Synopsis: Synopsis<4>.
-* Description: Description<4>.
-* See Also: See Also<3>.
-* Bugs: Bugs<4>.
+* Synopsis: Synopsis<4>.
+* Description: Description<4>.
+* See Also: See Also<3>.
+* Bugs: Bugs<4>.
@end menu
@@ -5368,9 +5368,9 @@ mail to <@email{contact@@anastasis.lu}>.
@menu
-* Description: Description<5>.
-* SEE ALSO::
-* BUGS::
+* Description: Description<5>.
+* SEE ALSO::
+* BUGS::
@end menu
@@ -5422,9 +5422,9 @@ include the entirety of @code{sub.conf} at that point in
@code{main.conf}.
.. TODO: Document ‘anastasis-config -V’ in light of ‘@@INLINE@@’ in
taler-config(1).
@menu
-* GLOBAL OPTIONS::
-* Authorization options::
-* Postgres database configuration::
+* GLOBAL OPTIONS::
+* Authorization options::
+* Postgres database configuration::
@end menu
@@ -5556,19 +5556,19 @@ Everyone is permitted to copy and distribute verbatim
copies of this
license document, but changing it is not allowed.
@menu
-* 0. PREAMBLE: 0 PREAMBLE.
-* 1. APPLICABILITY AND DEFINITIONS: 1 APPLICABILITY AND DEFINITIONS.
-* 2. VERBATIM COPYING: 2 VERBATIM COPYING.
-* 3. COPYING IN QUANTITY: 3 COPYING IN QUANTITY.
-* 4. MODIFICATIONS: 4 MODIFICATIONS.
-* 5. COMBINING DOCUMENTS: 5 COMBINING DOCUMENTS.
-* 6. COLLECTIONS OF DOCUMENTS: 6 COLLECTIONS OF DOCUMENTS.
-* 7. AGGREGATION WITH INDEPENDENT WORKS: 7 AGGREGATION WITH INDEPENDENT WORKS.
-* 8. TRANSLATION: 8 TRANSLATION.
-* 9. TERMINATION: 9 TERMINATION.
-* 10. FUTURE REVISIONS OF THIS LICENSE: 10 FUTURE REVISIONS OF THIS LICENSE.
-* 11. RELICENSING: 11 RELICENSING.
-* ADDENDUM; How to use this License for your documents: ADDENDUM How to use
this License for your documents.
+* 0. PREAMBLE: 0 PREAMBLE.
+* 1. APPLICABILITY AND DEFINITIONS: 1 APPLICABILITY AND DEFINITIONS.
+* 2. VERBATIM COPYING: 2 VERBATIM COPYING.
+* 3. COPYING IN QUANTITY: 3 COPYING IN QUANTITY.
+* 4. MODIFICATIONS: 4 MODIFICATIONS.
+* 5. COMBINING DOCUMENTS: 5 COMBINING DOCUMENTS.
+* 6. COLLECTIONS OF DOCUMENTS: 6 COLLECTIONS OF DOCUMENTS.
+* 7. AGGREGATION WITH INDEPENDENT WORKS: 7 AGGREGATION WITH INDEPENDENT WORKS.
+* 8. TRANSLATION: 8 TRANSLATION.
+* 9. TERMINATION: 9 TERMINATION.
+* 10. FUTURE REVISIONS OF THIS LICENSE: 10 FUTURE REVISIONS OF THIS LICENSE.
+* 11. RELICENSING: 11 RELICENSING.
+* ADDENDUM; How to use this License for your documents: ADDENDUM How to use
this License for your documents.
@end menu
@@ -5761,55 +5761,55 @@ In addition, you must do these things in the Modified
Version:
@itemize -
-@item
+@item
A. Use in the Title Page (and on the covers, if any) a title distinct
from that of the Document, and from those of previous versions (which
should, if there were any, be listed in the History section of the
Document). You may use the same title as a previous version if the
original publisher of that version gives permission.
-@item
+@item
B. List on the Title Page, as authors, one or more persons or
entities responsible for authorship of the modifications in the
Modified Version, together with at least five of the principal
authors of the Document (all of its principal authors, if it has
fewer than five), unless they release you from this requirement.
-@item
+@item
C. State on the Title page the name of the publisher of the Modified
Version, as the publisher.
-@item
+@item
@enumerate 4
-@item
+@item
Preserve all the copyright notices of the Document.
@end enumerate
-@item
+@item
E. Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
-@item
+@item
F. Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
-@item
+@item
G. Preserve in that license notice the full lists of Invariant
Sections and required Cover Texts given in the Document’s license
notice.
-@item
+@item
@enumerate 8
-@item
+@item
Include an unaltered copy of this License.
@end enumerate
-@item
+@item
I. Preserve the section Entitled “History”, Preserve its Title, and
add to it an item stating at least the title, year, new authors, and
publisher of the Modified Version as given on the Title Page. If
@@ -5818,7 +5818,7 @@ stating the title, year, authors, and publisher of the
Document as
given on its Title Page, then add an item describing the Modified
Version as stated in the previous sentence.
-@item
+@item
J. Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise the
network locations given in the Document for previous versions it was
@@ -5827,30 +5827,30 @@ a network location for a work that was published at
least four years
before the Document itself, or if the original publisher of the
version it refers to gives permission.
-@item
+@item
K. For any section Entitled “Acknowledgements” or “Dedications”,
Preserve the Title of the section, and preserve in the section all
the substance and tone of each of the contributor acknowledgements
and/or dedications given therein.
-@item
+@item
L. Preserve all the Invariant Sections of the Document, unaltered in
their text and in their titles. Section numbers or the equivalent are
not considered part of the section titles.
-@item
+@item
M. Delete any section Entitled “Endorsements”. Such a section may not
be included in the Modified Version.
-@item
+@item
N. Do not retitle any existing section to be Entitled “Endorsements”
or to conflict in title with any Invariant Section.
-@item
+@item
@enumerate 15
-@item
+@item
Preserve any Warranty Disclaimers.
@end enumerate
@end itemize
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-anastasis] branch master updated: -fix i18n, add some licensing headers to JSON resource files, GNUify,
gnunet <=