From 05e61e3c81f14b2c873b49e7c009ba050fcaee77 Mon Sep 17 00:00:00 2001
From: idk <hankhill19580@gmail.com>
Date: Mon, 5 Jul 2021 11:36:56 -0400
Subject: [PATCH] Document strict countries on web site. closes #31

---
 i2p2www/pages/global/nav.html                 |  1 +
 .../site/about/restrictive-countries.html     | 68 +++++++++++++++++++
 2 files changed, 69 insertions(+)
 create mode 100644 i2p2www/pages/site/about/restrictive-countries.html

diff --git a/i2p2www/pages/global/nav.html b/i2p2www/pages/global/nav.html
index 0e7388105..bb3f789ca 100644
--- a/i2p2www/pages/global/nav.html
+++ b/i2p2www/pages/global/nav.html
@@ -146,6 +146,7 @@
               </li>
               <li><a href="{{ site_url('docs/naming') }}"><div class="menuitem"><span>{{ _('Naming and Address Book') }}</span></div></a></li>
               <li><a href="{{ site_url('docs/plugins') }}"><div class="menuitem"><span>{{ _('Plugins') }}</span></div></a></li>
+              <li><a href="{{ site_url('about/restrictive-countries') }}"><div class="menuitem"><span>{{ _('Strict Countries') }}</span></div></a></li>
             </ul>
           </li>
           <li class="has-sub"><div class="menuitem"><span>{{ _('API') }}</span></div>
diff --git a/i2p2www/pages/site/about/restrictive-countries.html b/i2p2www/pages/site/about/restrictive-countries.html
new file mode 100644
index 000000000..8868fe732
--- /dev/null
+++ b/i2p2www/pages/site/about/restrictive-countries.html
@@ -0,0 +1,68 @@
+{% extends "global/layout.html" %}
+{% block title %}{{ _('Strict Countries') }}{% endblock %}
+{% block content %}
+<p>{% trans -%}This implementation of I2P(the Java implementation distributed from geti2p.net)
+includes a "Strict Countries List" which we use to decide how routers should behave 
+within regions where applications like I2P may be limited by law. For example, while
+no countries that we know of prohibit using I2P, some have broad prohibitions on
+participating in routing for others. Routers that appear to be in the "Restricted"
+countries will automatically be placed into "Hidden" mode.{%- endtrans %}</p>
+
+<p>{% trans -%}Since we are not legal experts, we currently rely on the information from:
+<a href="https://freedomhouse.org/">Freedom House</a>. Our general guidance is to include countries with a Civil
+Liberties (CL) score of 16 or less or a Internet Freedom score of 39 or less (not free). {%- endtrans %}</p>
+
+<h4>{% trans -%}Hidden Mode Summary{%- endtrans %}</h4>
+<p>{% trans -%}When a router is placed into hidden mode, three key things change about it's behavior.
+It will no longer publish a routerInfo to the NetDB, it will no longer accept
+participating tunnels, and it will reject direct connections to routers in the same
+country that it is in. These defenses make the routers more difficult to enumerate
+reliably, and prevent them from running afoul of restrictions on routing traffic for
+others.{%- endtrans %}</p>
+
+<h4>{% trans -%}Strict Countries List as of 2020{%- endtrans %}</h4>
+<pre><code>
+    /* Afghanistan */ "AF",
+    /* Azerbaijan */ "AZ",
+    /* Bahrain */ "BH",
+    /* Belarus */ "BY",
+    /* Brunei */ "BN",
+    /* Burundi */ "BI",
+    /* Cameroon */ "CM",
+    /* Central African Republic */ "CF",
+    /* Chad */ "TD",
+    /* China */ "CN",
+    /* Cuba */ "CU",
+    /* Democratic Republic of the Congo */ "CD",
+    /* Egypt */ "EG",
+    /* Equatorial Guinea */ "GQ",
+    /* Eritrea */ "ER",
+    /* Ethiopia */ "ET",
+    /* Iran */ "IR",
+    /* Iraq */ "IQ",
+    /* Kazakhstan */ "KZ",
+    /* Laos */ "LA",
+    /* Libya */ "LY",
+    /* Myanmar */ "MM",
+    /* North Korea */ "KP",
+    /* Palestinian Territories */ "PS",
+    /* Pakistan */ "PK",
+    /* Rwanda */ "RW",
+    /* Saudi Arabia */ "SA",
+    /* Somalia */ "SO",
+    /* South Sudan */ "SS",
+    /* Sudan */ "SD",
+    /* Eswatini (Swaziland) */ "SZ",
+    /* Syria */ "SY",
+    /* Tajikistan */ "TJ",
+    /* Thailand */ "TH",
+    /* Turkey */ "TR",
+    /* Turkmenistan */ "TM",
+    /* Venezuela */ "VE",
+    /* United Arab Emirates */ "AE",
+    /* Uzbekistan */ "UZ",
+    /* Vietnam */ "VN",
+    /* Western Sahara */ "EH",
+    /* Yemen */ "YE"
+</code></pre>
+{% endblock %}
-- 
GitLab