lsd0004

LSD0004: R5N Distributed Hash Table
Log | Files | Refs

commit 6e2f32b7fae8debf8465c613b5504b6fc058787f
parent acfbf3bdd521855def795697f6fc2d30a78ba11e
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date:   Tue,  7 Dec 2021 12:41:33 +0100

overlay API

Diffstat:
Mdraft-schanzen-r5n.xml | 40++++++++++++++++++++++++++++++++++++++++
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>