[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lsd0004] branch master updated: update
From: |
gnunet |
Subject: |
[lsd0004] branch master updated: update |
Date: |
Tue, 28 Dec 2021 16:28:25 +0100 |
This is an automated email from the git hooks/post-receive script.
martin-schanzenbach pushed a commit to branch master
in repository lsd0004.
The following commit(s) were added to refs/heads/master by this push:
new e6ba6d1 update
e6ba6d1 is described below
commit e6ba6d1fa5161ec18642c03ce029a385d81d088f
Author: Martin Schanzenbach <schanzen@gnunet.org>
AuthorDate: Tue Dec 28 16:28:19 2021 +0100
update
---
draft-schanzen-r5n.xml | 46 ++++++++++++++++++++++++++++++++++++----------
1 file changed, 36 insertions(+), 10 deletions(-)
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml
index bbfbf5e..b346566 100644
--- a/draft-schanzen-r5n.xml
+++ b/draft-schanzen-r5n.xml
@@ -284,6 +284,35 @@ PUT(key[, options], BLOCK)
<dd>Specified block type not supported by this implementation. FIXME:
We may not need this for the spec.</dd>
</dl>
</section>
+ <section anchor="block_functions">
+ <name>Block Functions</name>
+ <t>
+ Any block type implementation MUST implement the following functions.
+ </t>
+ <dl>
+ <dt>Evaluate-BlockRequest</dt>
+ <dd>
+ is used to evaluate the request for a block. It is used as part of
+ GET message processing, where the block payload is still unkown,
+ but the block XQUERY (FIXME: Undefined here) and key can and should
+ be verified, if possible.
+ </dd>
+ <dt>Evaluate-BlockReply</dt>
+ <dd>
+ is used to evaluate a block including its key and payload.
+ It is used as part of PUT and RESULT message processing.
+ An implementation MAY also use evaluate locally stored blocks
+ (FIXME again?) before passing it to other peers or the Overlay.
+ </dd>
+ <dt>Get-BlockKey</dt>
+ <dd>
+ is used to synthesize the block key from the block payload
+ and metadata. It is used as part of PUT message processing.
+ (FIXME: The implementation currently does PUT block key validation
+ and then Block Evaluate-BlockReply ONLY for RegEx...)
+ </dd>
+ </dl>
+ </section>
<section>
<name>Block Types</name>
<t>
@@ -742,11 +771,6 @@ END
If the "Record Route" flag is set in OPTIONS, add the local peer ID
to PUTPATH. FIXME: Should should come way later (?)
</li>
- <li>
- If the KEY of this PUT message is in the list of pending queries,
- return the message through the API. FIXME: Is this a conversion to
- a RESULT??
- </li>
<li>
If the local peer is the closest peer (AM-CLOSEST-PEER) or the
"Demultiplex Everywhere" options flag ist set, the message MUST
@@ -1010,11 +1034,13 @@ END
GETPATH, the path MUST be truncated.
</li>
<li>
- FIXME: No validation??
- </li>
- <li>
- If the KEY of this PUT message is in the list of pending queries,
- return the message through the API.
+ If the KEY of this PUT message is found in the list of pending
+ queries, the the KEY and XQUERY is validated against the requested
+ BTYPE.
+ If the BTYPE is not supported, or if the block key
+ does not match the BTYPE or if the XQUERY is malformed,
+ the message MUST be discarded. (FIXME: It is not clear the key
+ validation is happening. However, block validation is.)
</li>
<li>
The implementation MAY cache RESULT messages.
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.