GNUnet  0.10.x
Data Fields
DataMessage Struct Reference

Message transmitting content from or to the datastore service. More...

#include </home/handbook/gnunet/src/datastore/datastore.h>

Collaboration diagram for DataMessage:
[legend]

Data Fields

struct GNUNET_MessageHeader header
 Type is either GNUNET_MESSAGE_TYPE_DATASTORE_PUT, GNUNET_MESSAGE_TYPE_DATASTORE_REMOVE or GNUNET_MESSAGE_TYPE_DATASTORE_DATA. More...
 
uint32_t rid
 Reservation ID to use; use zero for none. More...
 
uint32_t size
 Number of bytes in the item (NBO). More...
 
uint32_t type
 Type of the item (NBO), zero for remove, (actually an enum GNUNET_BLOCK_Type) More...
 
uint32_t priority
 Priority of the item (NBO), zero for remove. More...
 
uint32_t anonymity
 Desired anonymity level (NBO), zero for remove. More...
 
uint32_t replication
 Desired replication level. More...
 
uint32_t reserved
 For alignment. More...
 
uint64_t uid
 Unique ID for the content (can be used for UPDATE); can be zero for remove (which indicates that the datastore should use whatever UID matches the key and content). More...
 
struct GNUNET_TIME_AbsoluteNBO expiration
 Expiration time (NBO); zero for remove. More...
 
struct GNUNET_HashCode key
 Key under which the item can be found. More...
 

Detailed Description

Message transmitting content from or to the datastore service.

Definition at line 196 of file datastore.h.

Field Documentation

◆ header

struct GNUNET_MessageHeader DataMessage::header

Type is either GNUNET_MESSAGE_TYPE_DATASTORE_PUT, GNUNET_MESSAGE_TYPE_DATASTORE_REMOVE or GNUNET_MESSAGE_TYPE_DATASTORE_DATA.

Depending on the message type, some fields may simply have values of zero.

Definition at line 204 of file datastore.h.

Referenced by check_data().

◆ rid

uint32_t DataMessage::rid

Reservation ID to use; use zero for none.

Definition at line 209 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_put(), and transmit_item().

◆ size

uint32_t DataMessage::size

Number of bytes in the item (NBO).

Definition at line 214 of file datastore.h.

Referenced by check_data(), GNUNET_DATASTORE_put(), GNUNET_DATASTORE_remove(), handle_data(), handle_put(), handle_remove(), and transmit_item().

◆ type

uint32_t DataMessage::type

Type of the item (NBO), zero for remove, (actually an enum GNUNET_BLOCK_Type)

Definition at line 219 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_data(), handle_put(), and transmit_item().

◆ priority

uint32_t DataMessage::priority

Priority of the item (NBO), zero for remove.

Definition at line 224 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_data(), handle_put(), and transmit_item().

◆ anonymity

uint32_t DataMessage::anonymity

Desired anonymity level (NBO), zero for remove.

Definition at line 229 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_data(), handle_put(), and transmit_item().

◆ replication

uint32_t DataMessage::replication

Desired replication level.

Definition at line 234 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_data(), handle_put(), and transmit_item().

◆ reserved

uint32_t DataMessage::reserved

For alignment.

Definition at line 239 of file datastore.h.

◆ uid

uint64_t DataMessage::uid

Unique ID for the content (can be used for UPDATE); can be zero for remove (which indicates that the datastore should use whatever UID matches the key and content).

Definition at line 247 of file datastore.h.

Referenced by handle_data(), and transmit_item().

◆ expiration

struct GNUNET_TIME_AbsoluteNBO DataMessage::expiration

Expiration time (NBO); zero for remove.

Definition at line 252 of file datastore.h.

Referenced by GNUNET_DATASTORE_put(), handle_data(), handle_put(), and transmit_item().

◆ key

struct GNUNET_HashCode DataMessage::key

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