cross-referencing I2CP and Streaming use in higher-level API's, changing language display to be pure-text

This commit is contained in:
hankhill19580
2019-06-27 18:36:24 +00:00
parent 3a5a7fa629
commit d8eb5e24ad
6 changed files with 38 additions and 27 deletions

View File

@ -78,6 +78,11 @@ The files are signed by {{ signer }},
{%- endtrans %}</p>
{% trans %}
Status: Beta-4
<ul>
<li><a href="https://github.com/mikalv/test-i2p-browser">Firefox Branch</a></li>
<li><a href="https://github.com/mikalv/i2p-browser-build-scripts">Build Scripts</a></li>
<li><a href="https://github.com/mikalv/i2pbutton">Browser Extension</a></li>
</ul>
{%- endtrans %}
{%- set name = 'Windows' -%}
@ -148,7 +153,6 @@ The files are signed by {{ signer }},
{%- endtrans %}</p>
<a href="https://download.i2p2.de/experimental/i2pbrowser-beta4/linux64">https://download.i2p2.de/experimental/i2pbrowser-beta4/linux64</a>
{% endcall %}
</div>
<div class = "labproject" >

View File

@ -127,8 +127,8 @@ Version 3.3 was introduced in I2P release 0.9.25.
<h3>Simple Anonymous Messaging (SAM) Version 3.3 Specification Overview</h3>
<p>
The client application talks to the SAM bridge, which deals with
all of the I2P functionality (using the streaming
library for virtual streams, or I2CP directly for datagrams).
all of the I2P functionality (using the <a href="{{ site_url('docs/api/streaming') }}">streaming library</a>
for virtual streams, or <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> directly for datagrams).
</p><p>
By default, the client&lt;--&gt;SAM bridge communication is unencrypted and unauthenticated.
@ -211,7 +211,7 @@ The protocol, as specified, is case-sensitive.
It is recommended but not required that the server map commands to upper case, for ease in testing via telnet.
This would allow, for example, "hello version" to work.
This is implementation-dependent.
Do not map keys or values to upper case, as this would corrupt I2CP options.
Do not map keys or values to upper case, as this would corrupt <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> options.
</p>
@ -287,9 +287,9 @@ and then disconnects.
<h3>I2CP Ports and Protocol</h3>
<p>
As of SAM 3.2, the I2CP ports and protocol may be specified by the
SAM client sender to be passed through to I2CP, and
the SAM bridge will pass the received I2CP port and protocol
As of SAM 3.2, the <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> ports and protocol may be specified by the
SAM client sender to be passed through to <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a>, and
the SAM bridge will pass the received <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> port and protocol
information to the SAM client.
</p><p>
For FROM_PORT and TO_PORT, the valid range is 0-65535, and the default is 0.
@ -298,9 +298,9 @@ For PROTOCOL, which may be specified only for RAW, the valid range is 0-255, and
</p><p>
For SESSION commands, the specified ports and protocol are the defaults for that session.
For individual streams or datagrams, the specified ports and protocol override the session defaults.
For received streams or datagrams, the indicated ports and protocol are as received from I2CP.
For received streams or datagrams, the indicated ports and protocol are as received from <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a>.
</p><p>
See the I2CP specification for more information.
See the <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> specification for more information.
</p><p>
@ -795,7 +795,7 @@ This is all on one line (space separated), shown on multiple lines for clarity:
All options are per-datagram settings that override the defaults specified in the SESSION CREATE.
</li><li>
Version 3.3 options SEND_TAGS, TAG_THRESHOLD, EXPIRES, and SEND_LEASESET
will be passed to I2CP if supported. See <a href="../protocol/i2cp#msg_SendMessageExpire">the I2CP specification</a> for details.
will be passed to <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> if supported. See <a href="../protocol/i2cp#msg_SendMessageExpire">the I2CP specification</a> for details.
Support by the SAM server is optional, it will ignore these options if unsupported.
</li><li>
this line is '\n' terminated.
@ -1061,7 +1061,7 @@ STREAM CONNECT, DATAGRAM SEND, etc. must use the subsession ID on a separate soc
</p><p>
The MASTER session connects to the router and builds tunnels. When the SAM bridge responds,
tunnels have been built and the session is ready for subsessions to be added.
All I2CP options pertaining to tunnel parameters such as length, quantity, and nickname must
All <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a> options pertaining to tunnel parameters such as length, quantity, and nickname must
be provided in the master's SESSION CREATE.
</p><p>
All utility commands are supported on a master session.
@ -1358,7 +1358,7 @@ SAM SESSION CREATE line.
</p><p>
All sessions may include <a href="{{ site_url('docs/protocol/i2cp') }}#options">I2CP options such as tunnel lengths</a>.
STREAM sessions may include <a href="{{ site_url('docs/api/streaming') }}#options">Streaming lib options</a>.
STREAM sessions may include <a href="{{ site_url('docs/api/streaming') }}#options">Streaming library options</a>.
See those references for option names and defaults.

View File

@ -236,7 +236,8 @@ to receive repliable (signed) datagrams.
This is used for queries, except for announces.
We call this the "query port".
This is the "port" value from the extension message.
Queries use I2CP protocol number 17.
Queries use <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a>
protocol number 17.
{%- endtrans %}</p>
<p>{% trans -%}
@ -248,7 +249,8 @@ contain tokens sent in the query, and need not be signed.
We call this the "response port".
This is the "rport" value from the extension message.
It must be 1 + the query port.
Responses and announces use I2CP protocol number 18.
Responses and announces use <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a>
protocol number 18.
{%- endtrans %}</p>
<p>{% trans -%}
@ -316,7 +318,7 @@ with 2 packets instead of 4, omitting the connect request and response.
In this case, the announce request would be a repliable datagram sent to the tracker's query port,
and the tracker would not require a response port.
While this is more efficient, it would be more difficult to modify an existing tracker to support this mode.
The URL for the 4-packet-mode tracker would use standard "udp://" prefix.
The URL for the 4-packet-mode tracker would use standard "udp://" prefix.
The URL for a modified 2-packet-mode tracker would require a different prefix if both modes are supported in I2P.
{%- endtrans %}</p>

View File

@ -115,12 +115,12 @@ encryption (e.g. the TCP transport uses AES256 with ephemeral keys).
{%- endtrans %}</p>
<p>{% trans -%}
End-to-end (I2CP) encryption (client application to server application) was disabled in I2P release
0.6; end-to-end (garlic) encryption (I2P client router to I2P server router) from Alice's router "a"
to Bob's router "h" remains. Notice the different use of terms! All data from a to h is end-to-end
encrypted, but the I2CP connection between the I2P router and the applications is not end-to-end
encrypted! A and h are the routers of Alice and Bob, while Alice and Bob in following chart are the
applications running atop of I2P.
End-to-end (<a href="{{ site_url('docs/protocol/i2cp') }}">I2CP</a>) encryption (client application to
server application) was disabled in I2P release 0.6; end-to-end (garlic) encryption (I2P client router
to I2P server router) from Alice's router "a" to Bob's router "h" remains. Notice the different use of
terms! All data from a to h is end-to-end encrypted, but the I2CP connection between the I2P router and
the applications is not end-to-end encrypted! A and h are the routers of Alice and Bob, while Alice and
Bob in following chart are the applications running atop of I2P.
{%- endtrans %}</p>
<div class="box" style="text-align:center;"><img src="{{ url_for('static', filename='images/endToEndEncryption.png') }}" alt="{% trans %}End to end layered encryption{% endtrans %}" title="{% trans %}End to end layered encryption{% endtrans %}" /></div>

View File

@ -11,7 +11,7 @@ Following is an index to the technical documentation for I2P.
This index is ordered from the highest to lowest layers.
The higher layers are for "clients" or applications;
the lower layers are inside the router itself.
The interface between applications and the router is the I2CP (I2P Control Protocol) API.
The interface between applications and the router is the <a href="{{ site_url('docs/protocol/i2cp') }}">I2CP (I2P Control Protocol) API</a>.
{%- endtrans %}</p>
<p>{% trans trac='https://trac.i2p2.de/report/1' -%}

View File

@ -49,21 +49,25 @@ ul.languages {
}
ul.languages li {
display: inline-block;
*display: inline;
*zoom: 1;
/*display: inline-block;*/
display: inline;
margin: 0 -2px !important;
}
.langname {
background: green;
display: none;
display: block;
padding: 0.5em;
position: absolute;
/*position: absolute;*/
right: 0;
text-align: center;
top: 4em;
z-index: 1;
min-width: 4rem;
}
#cssmenu img {
display: none;
}
/* Dropdown menu CSS */
@ -75,6 +79,7 @@ menu ul,
margin: 0;
padding: 0;
position: relative;
display: block;
}
#cssmenu {