GNUnet 0.21.1
GNUNET_FS_PublishContext Struct Reference

Handle for controlling a publication process. More...

#include </home/buildbot/bb-worker/worker/gnunet_firefly/build/src/service/fs/fs_api.h>

Collaboration diagram for GNUNET_FS_PublishContext:
[legend]

Data Fields

struct GNUNET_FS_Handleh
 Handle to the global fs context. More...
 
struct TopLevelActivitytop
 Our top-level activity entry (if we are top-level, otherwise NULL). More...
 
struct GNUNET_FS_FileInformationfi
 File-structure that is being shared. More...
 
struct GNUNET_CRYPTO_EcdsaPrivateKeyns
 Namespace that we are publishing in, NULL if we have no namespace. More...
 
char * nid
 ID of the content in the namespace, NULL if we have no namespace. More...
 
char * nuid
 ID for future updates, NULL if we have no namespace or no updates. More...
 
char * serialization
 Filename used for serializing information about this operation (should be determined using 'mktemp'). More...
 
struct GNUNET_MQ_Handlemq
 Our own message queue for the FS service; only briefly used when we start to index a file, otherwise NULL. More...
 
struct GNUNET_FS_FileInformationfi_pos
 Current position in the file-tree for the upload. More...
 
struct GNUNET_CRYPTO_FileHashContextfhc
 Non-null if we are currently hashing a file. More...
 
struct GNUNET_DATASTORE_Handledsh
 Connection to the datastore service. More...
 
struct GNUNET_DATASTORE_QueueEntryqre
 Queue entry for reservation/unreservation. More...
 
struct GNUNET_FS_PublishSksContextsks_pc
 Context for SKS publishing operation that is part of this publishing operation (NULL if not active). More...
 
struct GNUNET_FS_PublishKskContextksk_pc
 Context for KSK publishing operation that is part of this publishing operation (NULL if not active). More...
 
struct GNUNET_SCHEDULER_Taskupload_task
 ID of the task performing the upload. More...
 
uint64_t reserve_space
 Storage space to reserve for the operation. More...
 
uint32_t reserve_entries
 Overall number of entries to reserve for the publish operation. More...
 
enum GNUNET_FS_PublishOptions options
 Options for publishing. More...
 
int rid
 Space reservation ID with datastore service for this upload. More...
 
int any_done
 Set to GNUNET_YES if we were able to publish any block. More...
 
int all_done
 Set to GNUNET_YES if all processing has completed. More...
 
int skip_next_fi_callback
 Flag set to GNUNET_YES if the next callback from GNUNET_FS_file_information_inspect should be skipped because it is for the directory which was already processed with the parent. More...
 

Detailed Description

Handle for controlling a publication process.

Definition at line 1179 of file fs_api.h.

Field Documentation

◆ h

◆ top

struct TopLevelActivity* GNUNET_FS_PublishContext::top

Our top-level activity entry (if we are top-level, otherwise NULL).

Definition at line 1189 of file fs_api.h.

Referenced by deserialize_publish_file(), GNUNET_FS_publish_signal_suspend_(), and GNUNET_FS_publish_stop().

◆ fi

◆ ns

struct GNUNET_CRYPTO_EcdsaPrivateKey* GNUNET_FS_PublishContext::ns

Namespace that we are publishing in, NULL if we have no namespace.

Definition at line 1199 of file fs_api.h.

Referenced by deserialize_publish_file(), GNUNET_FS_publish_sync_(), and publish_sblock().

◆ nid

char* GNUNET_FS_PublishContext::nid

ID of the content in the namespace, NULL if we have no namespace.

Definition at line 1204 of file fs_api.h.

Referenced by deserialize_publish_file(), GNUNET_FS_publish_sync_(), publish_cleanup(), and publish_sblock().

◆ nuid

char* GNUNET_FS_PublishContext::nuid

ID for future updates, NULL if we have no namespace or no updates.

Definition at line 1209 of file fs_api.h.

Referenced by deserialize_publish_file(), GNUNET_FS_publish_sync_(), publish_cleanup(), and publish_sblock().

◆ serialization

char* GNUNET_FS_PublishContext::serialization

Filename used for serializing information about this operation (should be determined using 'mktemp').

Definition at line 1215 of file fs_api.h.

Referenced by deserialize_publish_file(), GNUNET_FS_publish_stop(), GNUNET_FS_publish_sync_(), and publish_cleanup().

◆ mq

struct GNUNET_MQ_Handle* GNUNET_FS_PublishContext::mq

Our own message queue for the FS service; only briefly used when we start to index a file, otherwise NULL.

Definition at line 1221 of file fs_api.h.

Referenced by client_connect_cb(), create_loc_uri(), handle_index_start_failed(), handle_index_start_ok(), hash_for_index_cb(), index_mq_error_handler(), loc_mq_error_handler(), and publish_cleanup().

◆ fi_pos

◆ fhc

struct GNUNET_CRYPTO_FileHashContext* GNUNET_FS_PublishContext::fhc

Non-null if we are currently hashing a file.

Definition at line 1231 of file fs_api.h.

Referenced by GNUNET_FS_publish_main_(), hash_for_index_cb(), and publish_cleanup().

◆ dsh

struct GNUNET_DATASTORE_Handle* GNUNET_FS_PublishContext::dsh

Connection to the datastore service.

Definition at line 1236 of file fs_api.h.

Referenced by block_proc(), deserialize_publish_file(), publish_cleanup(), publish_sblocks_cont(), and suspend_operation().

◆ qre

struct GNUNET_DATASTORE_QueueEntry* GNUNET_FS_PublishContext::qre

Queue entry for reservation/unreservation.

Definition at line 1241 of file fs_api.h.

Referenced by block_proc(), ds_put_cont(), finish_release_reserve(), finish_reserve(), GNUNET_FS_publish_stop(), publish_sblocks_cont(), and suspend_operation().

◆ sks_pc

struct GNUNET_FS_PublishSksContext* GNUNET_FS_PublishContext::sks_pc

Context for SKS publishing operation that is part of this publishing operation (NULL if not active).

Definition at line 1247 of file fs_api.h.

Referenced by GNUNET_FS_publish_stop(), publish_sblock(), publish_sblocks_cont(), and suspend_operation().

◆ ksk_pc

struct GNUNET_FS_PublishKskContext* GNUNET_FS_PublishContext::ksk_pc

Context for KSK publishing operation that is part of this publishing operation (NULL if not active).

Definition at line 1253 of file fs_api.h.

Referenced by GNUNET_FS_publish_stop(), publish_kblocks(), publish_kblocks_cont(), and suspend_operation().

◆ upload_task

struct GNUNET_SCHEDULER_Task* GNUNET_FS_PublishContext::upload_task

ID of the task performing the upload.

NO_TASK if the upload has completed.

Definition at line 1259 of file fs_api.h.

Referenced by block_proc(), deserialize_publish_file(), ds_put_cont(), encode_cont(), finish_reserve(), GNUNET_FS_publish_main_(), GNUNET_FS_publish_signal_suspend_(), GNUNET_FS_publish_stop(), publish_cleanup(), and publish_kblocks_cont().

◆ reserve_space

uint64_t GNUNET_FS_PublishContext::reserve_space

Storage space to reserve for the operation.

Definition at line 1264 of file fs_api.h.

Referenced by fip_signal_start().

◆ reserve_entries

uint32_t GNUNET_FS_PublishContext::reserve_entries

Overall number of entries to reserve for the publish operation.

Definition at line 1270 of file fs_api.h.

Referenced by fip_signal_start().

◆ options

◆ rid

int GNUNET_FS_PublishContext::rid

Space reservation ID with datastore service for this upload.

Definition at line 1281 of file fs_api.h.

Referenced by block_proc(), finish_reserve(), publish_sblocks_cont(), and suspend_operation().

◆ any_done

int GNUNET_FS_PublishContext::any_done

Set to GNUNET_YES if we were able to publish any block.

(and thus unindexing on error might make sense).

Definition at line 1287 of file fs_api.h.

Referenced by ds_put_cont(), and signal_publish_error().

◆ all_done

int GNUNET_FS_PublishContext::all_done

Set to GNUNET_YES if all processing has completed.

Definition at line 1292 of file fs_api.h.

Referenced by deserialize_publish_file(), finish_release_reserve(), GNUNET_FS_publish_main_(), and GNUNET_FS_publish_sync_().

◆ skip_next_fi_callback

int GNUNET_FS_PublishContext::skip_next_fi_callback

Flag set to GNUNET_YES if the next callback from GNUNET_FS_file_information_inspect should be skipped because it is for the directory which was already processed with the parent.

Definition at line 1299 of file fs_api.h.

Referenced by fip_signal_resume(), fip_signal_start(), fip_signal_stop(), fip_signal_suspend(), GNUNET_FS_publish_signal_suspend_(), and GNUNET_FS_publish_stop().


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