0.0.002
ddat interop with dat js cable interop with cabal js ddat's frontend = dat-thang cable fe = cable-thang dillo support based on cel's dillo-dat bootstrap node xplatform support Signed-off-by: divo <418@cryspace.space>
This commit is contained in:
1 parent
f0f91540be
commit
b735900f2e
323 files changed
+134347
-343
No files matched your search
@@ -0,0 +1,43 @@
|
||||
#ifndef SLEEP_FEED_H
|
||||
#define SLEEP_FEED_H
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include "keys.h"
|
||||
|
||||
typedef struct sleep_feed {
|
||||
char directory[1024];
|
||||
char name[64];
|
||||
uint8_t **blocks;
|
||||
size_t *lengths;
|
||||
uint8_t **proofs;
|
||||
size_t *proof_lengths;
|
||||
size_t length;
|
||||
size_t capacity;
|
||||
sleep_keypair_t keypair;
|
||||
int writable;
|
||||
int dirty;
|
||||
int remote_only;
|
||||
int persist_remote;
|
||||
} sleep_feed_t;
|
||||
|
||||
int sleep_feed_open(sleep_feed_t *feed, const char *directory, const char *name,
|
||||
const sleep_keypair_t *keypair);
|
||||
/* Opens an in-memory, read-only feed replica using only its public key. */
|
||||
int sleep_feed_open_remote(sleep_feed_t *feed, const char *directory,
|
||||
const char *name, const uint8_t public_key[32]);
|
||||
/* Merge verified cached remote blocks and persist subsequent received blocks. */
|
||||
int sleep_feed_load_remote(sleep_feed_t *feed, const uint8_t public_key[32]);
|
||||
size_t sleep_feed_length(const sleep_feed_t *feed);
|
||||
int sleep_feed_read(const sleep_feed_t *feed, size_t index, uint8_t **data, size_t *length);
|
||||
int sleep_feed_append(sleep_feed_t *feed, const uint8_t *data, size_t length);
|
||||
/* Keeps already verified remote blocks and proofs in this session's memory. */
|
||||
int sleep_feed_append_remote(sleep_feed_t *feed, size_t index,
|
||||
const uint8_t *data, size_t length,
|
||||
const uint8_t *proof, size_t proof_length);
|
||||
int sleep_feed_truncate(sleep_feed_t *feed, size_t length);
|
||||
int sleep_feed_has(const sleep_feed_t *feed, size_t index);
|
||||
int sleep_feed_byte_offset(const sleep_feed_t *feed, size_t index,
|
||||
uint64_t *offset);
|
||||
int sleep_feed_flush(sleep_feed_t *feed);
|
||||
void sleep_feed_close(sleep_feed_t *feed);
|
||||
#endif
|
||||
Reference in new issue
Block a user