diff --git a/i2p2www/pages/global/nav.html b/i2p2www/pages/global/nav.html index b762df3c..426a5d63 100644 --- a/i2p2www/pages/global/nav.html +++ b/i2p2www/pages/global/nav.html @@ -62,16 +62,16 @@
  • {{ _('Specifications') }}
  • {{ _('Naming and addressbook') }}
  • diff --git a/i2p2www/pages/site/docs/plugins.html b/i2p2www/pages/site/docs/plugins.html index cc4ef7fa..c3e7b452 100644 --- a/i2p2www/pages/site/docs/plugins.html +++ b/i2p2www/pages/site/docs/plugins.html @@ -66,7 +66,7 @@ builds).

    Development

    -

    See the latest plugin specification and the See the latest plugin specification and the plugin forum on zzz.i2p.

    See also the sources for plugins developed by various people. Some plugins, such as snowman, were developed diff --git a/i2p2www/pages/site/docs/protocol/index.html b/i2p2www/pages/site/docs/protocol/index.html index e04e9844..84becb5b 100644 --- a/i2p2www/pages/site/docs/protocol/index.html +++ b/i2p2www/pages/site/docs/protocol/index.html @@ -63,7 +63,7 @@ However, each of these layers adds additional functionality, to allow applicatio
    Streaming Library: an implementation of TCP-like streams over I2P. This allows easier porting of existing applications to I2P.
    - Datagram Library: an implementation of UDP-like messages over I2P. This allows easier porting of existing applications to I2P. + Datagram Library: an implementation of UDP-like messages over I2P. This allows easier porting of existing applications to I2P.

  • I2P Application Interface Layer: additional (optional) libraries allowing easier implementations on top of I2P. diff --git a/i2p2www/pages/site/docs/specs/blockfile.html b/i2p2www/pages/site/docs/spec/blockfile.html similarity index 94% rename from i2p2www/pages/site/docs/specs/blockfile.html rename to i2p2www/pages/site/docs/spec/blockfile.html index d10902c2..ce187ef7 100644 --- a/i2p2www/pages/site/docs/specs/blockfile.html +++ b/i2p2www/pages/site/docs/spec/blockfile.html @@ -166,7 +166,7 @@ The maximum number of entries per span is 16. "%%__INFO__%%" is the master database skiplist with String/Properties key/value entries containing only one entry:

    -    "info": a Properties (UTF-8 String/String Map), serialized as a Mapping:
    +    "info": a Properties (UTF-8 String/String Map), serialized as a Mapping:
                 "version":   "2"
                 "created":   Java long time (ms)
                 "upgraded":  Java long time (ms) (as of database version 2)
    @@ -181,7 +181,7 @@ The maximum number of entries per span is 16.
     

         The skiplist keys are 4-byte Integers, the first 4 bytes of the hash of the Destination.
    -    The skiplist values are each a Properties (a UTF-8 String/String Map) serialized as a Mapping
    +    The skiplist values are each a Properties (a UTF-8 String/String Map) serialized as a Mapping
             There may be multiple entries in the properties, each one is a reverse mapping,
                as there may be more than one hostname for a given destination,
                or there could be collisions with the same first 4 bytes of the hash.
    @@ -197,8 +197,8 @@ The keys/values in these skiplists are as follows:
     

          key:    a UTF-8 String (the hostname)
    -     value:  a DestEntry, which is a Properties (a UTF-8 String/String Map) serialized as a Mapping
    -             followed by a binary Destination (serialized as usual).
    +     value:  a DestEntry, which is a Properties (a UTF-8 String/String Map) serialized as a Mapping
    +             followed by a binary Destination (serialized as usual).
     

    diff --git a/i2p2www/pages/site/docs/specs/common_structures.html b/i2p2www/pages/site/docs/spec/common_structures.html similarity index 98% rename from i2p2www/pages/site/docs/specs/common_structures.html rename to i2p2www/pages/site/docs/spec/common_structures.html index ca582871..36acc25f 100644 --- a/i2p2www/pages/site/docs/specs/common_structures.html +++ b/i2p2www/pages/site/docs/spec/common_structures.html @@ -204,9 +204,9 @@ payload :: data

  • For Router Identities, the Certificate is always NULL, no others are currently implemented.
  • -For Garlic Cloves, the Certificate is always NULL, no others are currently implemented. +For Garlic Cloves, the Certificate is always NULL, no others are currently implemented.
  • -For Garlic Messages, the Certificate is always NULL, no others are currently implemented. +For Garlic Messages, the Certificate is always NULL, no others are currently implemented.
  • For Destinations, the Certificate may be non-NULL, however non-NULL certs are not widely used, and any checking is left to the application-level. @@ -680,6 +680,6 @@ The signature may be verified using the signing public key of the router_ident.

    Delivery Instructions

    -Defined in the Tunnel Message Specification. +Defined in the Tunnel Message Specification. {% endblock %} diff --git a/i2p2www/pages/site/docs/specs/configuration.html b/i2p2www/pages/site/docs/spec/configuration.html similarity index 94% rename from i2p2www/pages/site/docs/specs/configuration.html rename to i2p2www/pages/site/docs/spec/configuration.html index ce440846..8946aae0 100644 --- a/i2p2www/pages/site/docs/specs/configuration.html +++ b/i2p2www/pages/site/docs/spec/configuration.html @@ -40,7 +40,7 @@ Reads and writes are implemented in DataHelper loadProps() and storeProps(). Note that the file format is significantly different than the serialized format for I2P protocols specified in -Mapping. +Mapping.

    Core library and router

    @@ -57,7 +57,7 @@ Configured via /configlogging in the router console.

    Individual Plugin (xxx/plugin.config)

    -See the plugin specification. +See the plugin specification.

    Plugins (plugins.config)

    diff --git a/i2p2www/pages/site/docs/specs/datagrams.html b/i2p2www/pages/site/docs/spec/datagrams.html similarity index 94% rename from i2p2www/pages/site/docs/specs/datagrams.html rename to i2p2www/pages/site/docs/spec/datagrams.html index 41f446df..08948cdf 100644 --- a/i2p2www/pages/site/docs/specs/datagrams.html +++ b/i2p2www/pages/site/docs/spec/datagrams.html @@ -82,7 +82,7 @@ Each datagram is sent through I2P as a single message (or as an individual clove Message encapsulation is implemented in the underlying I2CP, I2NP, and -tunnel message layers. +tunnel message layers. There is no packet delimiter mechanism or length field in the datagram protocol. @@ -107,7 +107,7 @@ Length: 0 - unlimited (see notes)

    Notes

    The practical length is limited by lower layers of protocols - the -tunnel message spec +tunnel message spec limits messages to about 61.2 KB and the transports currently limit messages to about 32 KB, although this may be raised in the future. @@ -143,11 +143,11 @@ Repliable datagrams contain a 'from' address and a signature. These add 427 byte -from :: a Destination +from :: a Destination length: 387+ bytes The originator and signer of the datagram -signature :: a Signature +signature :: a Signature length: 40 bytes The DSA signature of the SHA256 hash of the payload, which may be verified by the DSA signing public key of the 'from' Destination diff --git a/i2p2www/pages/site/docs/specs/i2cp.html b/i2p2www/pages/site/docs/spec/i2cp.html similarity index 85% rename from i2p2www/pages/site/docs/specs/i2cp.html rename to i2p2www/pages/site/docs/spec/i2cp.html index ef6424dc..2f2f4b23 100644 --- a/i2p2www/pages/site/docs/specs/i2cp.html +++ b/i2p2www/pages/site/docs/spec/i2cp.html @@ -158,9 +158,9 @@ as they generally disconnect the session upon reception of an unsupported messag

    Contents

    1. - 4 byte Integer specifying the length of the message body + 4 byte Integer specifying the length of the message body
    2. - 1 byte Integer specifying the message type. + 1 byte Integer specifying the message type.
    3. The I2CP message body, 0 or more bytes
    @@ -181,7 +181,7 @@ point in time.

    Contents

    1. -4 byte Integer +4 byte Integer

    Notes

    @@ -200,7 +200,7 @@ Destination to another.

    Contents

    1. -4 byte Integer length +4 byte Integer length
    2. That many bytes
    @@ -221,14 +221,14 @@ Defines the configuration options for a particular client session.

    Contents

    1. -Destination +Destination
    2. -Mapping of options +Mapping of options
    3. -Creation Date +Creation Date
    4. -DSA Signature of the previous 3 fields, signed by the -Signing Private Key +DSA Signature of the previous 3 fields, signed by the +Signing Private Key

    Notes

    @@ -249,7 +249,7 @@ time.

    Contents

    1. -2 byte Integer +2 byte Integer

    Notes

    @@ -396,28 +396,28 @@ Sent from Router to Client in response to a Get Bandwidth Limits Message.

    Contents

    1. -4 byte Integer +4 byte Integer Client inbound limit (KBps)
    2. -4 byte Integer +4 byte Integer Client outbound limit (KBps)
    3. -4 byte Integer +4 byte Integer Router inbound limit (KBps)
    4. -4 byte Integer +4 byte Integer Router inbound burst limit (KBps)
    5. -4 byte Integer +4 byte Integer Router outbound limit (KBps)
    6. -4 byte Integer +4 byte Integer Router outbound burst limit (KBps)
    7. -4 byte Integer +4 byte Integer Router burst time (seconds)
    8. -Nine 4-byte Integers +Nine 4-byte Integers undefined
    @@ -441,11 +441,11 @@ Sent from Client to Router.
    1. Session ID
    2. -Signing Private Key +Signing Private Key
    3. -Private Key +Private Key
    4. -LeaseSet +LeaseSet

    Notes

    @@ -497,7 +497,7 @@ The router responds with a Dest Reply Message.

    Contents

    1. -SHA-256 Hash +SHA-256 Hash

    Notes

    @@ -516,9 +516,9 @@ Sent from Router to Client in response to a Dest Lookup Message.

    Contents

    1. -Destination +Destination on success, or -Hash +Hash on failure
    @@ -561,7 +561,7 @@ Sent either from router to client or from client to router.

    Contents

    1. -Reason String +Reason String

    Notes

    @@ -599,7 +599,7 @@ The router responds with a Set Date Message.

    Contents

    1. -I2CP Version String +I2CP Version String

    Notes

    @@ -651,11 +651,11 @@ For an outgoing message, this is a response to a
  • Message ID
  • -1 byte Integer status +1 byte Integer status
  • -4 byte Integer size +4 byte Integer size
  • -4 byte Integer nonce +4 byte Integer nonce
  • Notes

    @@ -760,10 +760,10 @@ Sent either from router to client or from client to router.
    1. Session ID
    2. -1 byte Integer abuse severity +1 byte Integer abuse severity (0 is minimally abusive, 255 being extremely abusive)
    3. -Reason String +Reason String
    4. Message ID
    @@ -789,16 +789,16 @@ The client responds with a Create LeaseSet Message<
    1. Session ID
    2. -1 byte Integer number of tunnels +1 byte Integer number of tunnels
    3. That many pairs of:
      1. - Router Identity + Router Identity
      2. - Tunnel ID + Tunnel ID
    4. -End Date +End Date

    Notes

    @@ -821,11 +821,11 @@ The router responds with a Message Status Message
  • Session ID
  • -Destination +Destination
  • Payload
  • -4 byte Integer nonce +4 byte Integer nonce
  • Notes

    @@ -858,15 +858,15 @@ Sent from Client to Router. Same as Send Message Message, except includes an exp
    1. Session ID
    2. -Destination +Destination
    3. Payload
    4. -4 byte Integer nonce +4 byte Integer nonce
    5. 2 bytes of flags (options)
    6. -Expiration Date +Expiration Date truncated from 8 bytes to 6 bytes
    @@ -961,7 +961,7 @@ Sent from Router to Client.
    1. Session ID
    2. -1 byte Integer status +1 byte Integer status

    Notes

    @@ -981,9 +981,9 @@ Sent from Router to Client as a part of the initial handshake.

    Contents

    1. -Date +Date
    2. -I2CP Version String +I2CP Version String

    Notes

    diff --git a/i2p2www/pages/site/docs/specs/i2np.html b/i2p2www/pages/site/docs/spec/i2np.html similarity index 94% rename from i2p2www/pages/site/docs/specs/i2np.html rename to i2p2www/pages/site/docs/spec/i2np.html index 4f8dde68..a80b95c1 100644 --- a/i2p2www/pages/site/docs/specs/i2np.html +++ b/i2p2www/pages/site/docs/spec/i2np.html @@ -24,11 +24,11 @@ They are not complete messages.

    Contents

    - 1 byte Integer specifying the type of this message, - followed by a 4 byte Integer specifying the message-id. - After that there is an expiration Date, - followed by a 2 byte Integer specifying - the length of the message payload, followed by a Hash, + 1 byte Integer specifying the type of this message, + followed by a 4 byte Integer specifying the message-id. + After that there is an expiration Date, + followed by a 2 byte Integer specifying + the length of the message payload, followed by a Hash, which is truncated to the first byte. After that the actual message data follows.

    @@ -116,7 +116,7 @@ where the far-end router's version is known and checksum generation can be disab
     

    Contents

    - TunnelId to receive messages on, followed by the Hash of our RouterIdentity. After that the TunnelId and the Hash of the next router's RouterIdentity follow. + TunnelId to receive messages on, followed by the Hash of our RouterIdentity. After that the TunnelId and the Hash of the next router's RouterIdentity follow.

    Definition

    @@ -341,7 +341,7 @@ unencrypted:
     

    Definition

     unencrypted:
    -Delivery Instructions :: as defined here
    +Delivery Instructions :: as defined here
            Length varies but is typically 39, 43, or 47 bytes
     
     I2NP Message :: Any I2NP Message
    @@ -365,7 +365,7 @@ Certificate :: Always NULL in the current implementation (3 bytes total, all zer
     
  • See also the garlic routing specification.
  • - See also Delivery Instructions definition + See also Delivery Instructions definition
  • Maximum length is a function of the total length of all the cloves and the maximum length of the GarlicMessage. @@ -509,7 +509,7 @@ reply token: reply tunnelId: 4 byte Tunnel ID only included if reply token > 0 - This is the tunnel ID of the inbound gateway of the tunnel the response should be sent to + This is the tunnel ID of the inbound gateway of the tunnel the response should be sent to reply gateway: 32 bytes @@ -852,7 +852,7 @@ data:

    Notes

    diff --git a/i2p2www/pages/site/docs/specs/plugin.html b/i2p2www/pages/site/docs/spec/plugin.html similarity index 100% rename from i2p2www/pages/site/docs/specs/plugin.html rename to i2p2www/pages/site/docs/spec/plugin.html diff --git a/i2p2www/pages/site/docs/specs/ssu.html b/i2p2www/pages/site/docs/spec/ssu.html similarity index 100% rename from i2p2www/pages/site/docs/specs/ssu.html rename to i2p2www/pages/site/docs/spec/ssu.html diff --git a/i2p2www/pages/site/docs/specs/tunnel_message.html b/i2p2www/pages/site/docs/spec/tunnel_message.html similarity index 97% rename from i2p2www/pages/site/docs/specs/tunnel_message.html rename to i2p2www/pages/site/docs/spec/tunnel_message.html index 85a31dce..3b0da15b 100644 --- a/i2p2www/pages/site/docs/specs/tunnel_message.html +++ b/i2p2www/pages/site/docs/spec/tunnel_message.html @@ -166,11 +166,11 @@ set, this is a follow on fragment.

    Note that Delivery Instructions are also used inside -Garlic Cloves, +Garlic Cloves, where the format is slightly different. In a Garlic Clove, messages are not fragmented, and the fragment bit in the flag byte is redefined. See the -Garlic Clove documentation +Garlic Clove documentation for more details. @@ -238,7 +238,7 @@ Message ID: 4 bytes Optional, present if this message is the first of 2 or more fragments An ID that uniquely identifies all fragments as belonging to a single message - (the current implementation uses the I2NP Message ID) + (the current implementation uses the I2NP Message ID) Extended Options: 2 or more bytes diff --git a/i2p2www/pages/site/docs/specs/updates.html b/i2p2www/pages/site/docs/spec/updates.html similarity index 95% rename from i2p2www/pages/site/docs/specs/updates.html rename to i2p2www/pages/site/docs/spec/updates.html index bdfb69cd..dd4574fc 100644 --- a/i2p2www/pages/site/docs/specs/updates.html +++ b/i2p2www/pages/site/docs/spec/updates.html @@ -44,13 +44,13 @@ is simply a zip file with a prepended 56 byte header. The header contains:

    The signature covers only the zip archive - not the prepended version. -The signature must match one of the DSA public keys configured into the router, +The signature must match one of the DSA public keys configured into the router, which has a hardcoded default list of keys of the current project release managers.

    For version comparison purposes, version fields contain [0-9]*, field separators are diff --git a/i2p2www/pages/site/docs/transport/ssu.html b/i2p2www/pages/site/docs/transport/ssu.html index 5d53b224..1fab0969 100644 --- a/i2p2www/pages/site/docs/transport/ssu.html +++ b/i2p2www/pages/site/docs/transport/ssu.html @@ -444,7 +444,7 @@ should accurately reflect the current implementation, however there may be small

    Specification

    -Now on the SSU specification page. +Now on the SSU specification page. {% endblock %}