commit 6e2f32b7fae8debf8465c613b5504b6fc058787f
parent acfbf3bdd521855def795697f6fc2d30a78ba11e
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Tue, 7 Dec 2021 12:41:33 +0100
overlay API
Diffstat:
1 file changed, 40 insertions(+), 0 deletions(-)
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml
@@ -346,6 +346,46 @@ see how we can offer even the most minimal protections against peer
The peer public key is the public key of the corresponding
Ed25519<xref target="ed25519" /> peer private key.
</t>
+ <t>
+ Any implementation of this specification MUST expose the two API
+ procedures "GET" and "PUT".
+ </t>
+ <section>
+ <name>The GET procedure</name>
+ <t>
+ The GET procedure is defined as follows:
+ </t>
+ <artwork name="" type="" align="left" alt=""><![CDATA[
+GET(key[, options]) -> RESULTS as List
+ or
+GET(key[, options], callbackFunction)
+ ]]></artwork>
+ <t>
+ The procedure takes two arguments. The first argument is the query
+ key and is mandatory. The GET procedure may also allow the caller
+ to specifiy query options.
+ </t>
+ <t>
+ The procedure either returns a list of results or allows the caller
+ to provide a callback function which is called for any result
+ received from the DHT until the procedure is cancelled.
+ </t>
+ </section>
+ <section>
+ <name>The PUT procedure</name>
+ <t>
+ The PUT procedure is defined as follows:
+ </t>
+ <artwork name="" type="" align="left" alt=""><![CDATA[
+PUT(key[, options], PAYLOAD)
+ ]]></artwork>
+ <t>
+ The procedure takes three arguments. The first argument is the query
+ key and is mandatory. The PUT procedure may also allow the caller
+ to specifiy put options. The third argument is the payload data which
+ is to be stored under the provided put key.
+ </t>
+ </section>
</section>
<section anchor="blockstorage" numbered="true" toc="default">
<name>Block Storage</name>