GNUnet 0.22.0
GNUNET_FS_BlockOptions Struct Reference

Settings for publishing a block (which may of course also apply to an entire directory or file). More...

#include <gnunet_fs_service.h>

Collaboration diagram for GNUNET_FS_BlockOptions:
[legend]

Data Fields

struct GNUNET_TIME_Absolute expiration_time
 At what time should the block expire? Data blocks (DBLOCKS and IBLOCKS) may still be used even if they are expired (however, they'd be removed quickly from the datastore if we are short on space), all other types of blocks will no longer be returned after they expire. More...
 
uint32_t anonymity_level
 At which anonymity level should the block be shared? (0: no anonymity, 1: normal GAP, >1: with cover traffic). More...
 
uint32_t content_priority
 How important is it for us to store the block? If we run out of space, the highest-priority, non-expired blocks will be kept. More...
 
uint32_t replication_level
 How often should we try to migrate the block to other peers? Only used if "CONTENT_PUSHING" is set to YES, in which case we first push each block to other peers according to their replication levels. More...
 

Detailed Description

Settings for publishing a block (which may of course also apply to an entire directory or file).

Definition at line 1730 of file gnunet_fs_service.h.

Field Documentation

◆ expiration_time

struct GNUNET_TIME_Absolute GNUNET_FS_BlockOptions::expiration_time

At what time should the block expire? Data blocks (DBLOCKS and IBLOCKS) may still be used even if they are expired (however, they'd be removed quickly from the datastore if we are short on space), all other types of blocks will no longer be returned after they expire.

Definition at line 1739 of file gnunet_fs_service.h.

Referenced by GNUNET_FS_file_information_sync_(), GNUNET_FS_publish_ublock_(), main(), and make_file().

◆ anonymity_level

uint32_t GNUNET_FS_BlockOptions::anonymity_level

At which anonymity level should the block be shared? (0: no anonymity, 1: normal GAP, >1: with cover traffic).

Definition at line 1745 of file gnunet_fs_service.h.

Referenced by GNUNET_FS_file_information_sync_(), GNUNET_FS_publish_ublock_(), main(), and make_file().

◆ content_priority

uint32_t GNUNET_FS_BlockOptions::content_priority

How important is it for us to store the block? If we run out of space, the highest-priority, non-expired blocks will be kept.

Definition at line 1752 of file gnunet_fs_service.h.

Referenced by GNUNET_FS_file_information_sync_(), GNUNET_FS_publish_ublock_(), main(), and make_file().

◆ replication_level

uint32_t GNUNET_FS_BlockOptions::replication_level

How often should we try to migrate the block to other peers? Only used if "CONTENT_PUSHING" is set to YES, in which case we first push each block to other peers according to their replication levels.

Once each block has been pushed that many times to other peers, blocks are chosen for migration at random. Naturally, there is no guarantee that the other peers will keep these blocks for any period of time (since they won't have any priority or might be too busy to even store the block in the first place).

Definition at line 1765 of file gnunet_fs_service.h.

Referenced by GNUNET_FS_file_information_sync_(), GNUNET_FS_publish_ublock_(), main(), and make_file().


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