GNUnet debian-0.24.3-29-g453fda2cf
 
Loading...
Searching...
No Matches
GNUNET_FS_TreeEncoder Struct Reference

Context for an ECRS-based file encoder that computes the Merkle-ish-CHK tree. More...

Collaboration diagram for GNUNET_FS_TreeEncoder:
[legend]

Data Fields

struct GNUNET_FS_Handleh
 Global FS context.
 
void * cls
 Closure for all callbacks.
 
GNUNET_FS_TreeBlockProcessor proc
 Function to call on encrypted blocks.
 
GNUNET_FS_TreeProgressCallback progress
 Function to call with progress information.
 
GNUNET_FS_DataReader reader
 Function to call to receive input data.
 
GNUNET_SCHEDULER_TaskCallback cont
 Function to call once we're done with processing.
 
char * emsg
 Set to an error message (if we had an error).
 
struct GNUNET_FS_Uriuri
 Set to the URI (upon successful completion)
 
uint64_t size
 Overall file size.
 
uint64_t publish_offset
 How far are we?
 
unsigned int current_depth
 How deep are we? Depth 0 is for the DBLOCKs.
 
unsigned int chk_tree_depth
 How deep is the tree? Always > 0.
 
struct ContentHashKeychk_tree
 In-memory cache of the current CHK tree.
 
int in_next
 Are we currently in 'GNUNET_FS_tree_encoder_next'? Flag used to prevent recursion.
 

Detailed Description

Context for an ECRS-based file encoder that computes the Merkle-ish-CHK tree.

Definition at line 35 of file fs_tree.c.

Field Documentation

◆ h

struct GNUNET_FS_Handle* GNUNET_FS_TreeEncoder::h

Global FS context.

Definition at line 40 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create().

◆ cls

void* GNUNET_FS_TreeEncoder::cls

Closure for all callbacks.

Definition at line 45 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), GNUNET_FS_tree_encoder_finish(), and GNUNET_FS_tree_encoder_next().

◆ proc

GNUNET_FS_TreeBlockProcessor GNUNET_FS_TreeEncoder::proc

Function to call on encrypted blocks.

Definition at line 50 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), and GNUNET_FS_tree_encoder_next().

◆ progress

GNUNET_FS_TreeProgressCallback GNUNET_FS_TreeEncoder::progress

Function to call with progress information.

Definition at line 55 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), and GNUNET_FS_tree_encoder_next().

◆ reader

GNUNET_FS_DataReader GNUNET_FS_TreeEncoder::reader

Function to call to receive input data.

Definition at line 60 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), GNUNET_FS_tree_encoder_finish(), and GNUNET_FS_tree_encoder_next().

◆ cont

GNUNET_SCHEDULER_TaskCallback GNUNET_FS_TreeEncoder::cont

Function to call once we're done with processing.

Definition at line 65 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), and GNUNET_FS_tree_encoder_next().

◆ emsg

char* GNUNET_FS_TreeEncoder::emsg

Set to an error message (if we had an error).

Definition at line 70 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_finish(), and GNUNET_FS_tree_encoder_next().

◆ uri

struct GNUNET_FS_Uri* GNUNET_FS_TreeEncoder::uri

Set to the URI (upon successful completion)

Definition at line 75 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_finish(), GNUNET_FS_tree_encoder_get_uri(), and GNUNET_FS_tree_encoder_next().

◆ size

uint64_t GNUNET_FS_TreeEncoder::size

Overall file size.

Definition at line 80 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), and GNUNET_FS_tree_encoder_next().

◆ publish_offset

uint64_t GNUNET_FS_TreeEncoder::publish_offset

How far are we?

Definition at line 85 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_next().

◆ current_depth

unsigned int GNUNET_FS_TreeEncoder::current_depth

How deep are we? Depth 0 is for the DBLOCKs.

Definition at line 90 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_next().

◆ chk_tree_depth

unsigned int GNUNET_FS_TreeEncoder::chk_tree_depth

How deep is the tree? Always > 0.

Definition at line 95 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), and GNUNET_FS_tree_encoder_next().

◆ chk_tree

struct ContentHashKey* GNUNET_FS_TreeEncoder::chk_tree

In-memory cache of the current CHK tree.

This struct will contain the CHK values from the root to the currently processed node in the tree as identified by "current_depth" and "publish_offset". The "chktree" will be initially NULL, then allocated to a sufficient number of entries for the size of the file and finally freed once the upload is complete.

Definition at line 108 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_create(), GNUNET_FS_tree_encoder_finish(), and GNUNET_FS_tree_encoder_next().

◆ in_next

int GNUNET_FS_TreeEncoder::in_next

Are we currently in 'GNUNET_FS_tree_encoder_next'? Flag used to prevent recursion.

Definition at line 114 of file fs_tree.c.

Referenced by GNUNET_FS_tree_encoder_finish(), and GNUNET_FS_tree_encoder_next().


The documentation for this struct was generated from the following file: