GNUnet  0.11.x
Data Fields
GNUNET_FS_Uri Struct Reference

A Universal Resource Identifier (URI), opaque. More...

#include </home/handbook/gnunet/src/fs/fs_api.h>

Collaboration diagram for GNUNET_FS_Uri:
[legend]

Data Fields

enum GNUNET_FS_UriType type
 Type of the URI. More...
 
union {
   struct {
      char **   keywords
 Keywords start with a '+' if they are mandatory (in which case the '+' is NOT part of the keyword) and with a simple space if they are optional (in which case the space is ALSO not part of the actual keyword). More...
 
      unsigned int   keywordCount
 Size of the keywords array. More...
 
   }   ksk
 
   struct {
      struct GNUNET_CRYPTO_EcdsaPublicKey   ns
 Identifier of the namespace. More...
 
      char *   identifier
 Human-readable identifier chosen for this entry in the namespace. More...
 
   }   sks
 
   struct FileIdentifier   chk
 Information needed to retrieve a file (content-hash-key plus file size). More...
 
   struct Location   loc
 Information needed to retrieve a file including signed location (identity of a peer) of the content. More...
 
data
 

Detailed Description

A Universal Resource Identifier (URI), opaque.

Definition at line 165 of file fs_api.h.

Field Documentation

◆ type

enum GNUNET_FS_UriType GNUNET_FS_Uri::type

◆ keywords

char** GNUNET_FS_Uri::keywords

Keywords start with a '+' if they are mandatory (in which case the '+' is NOT part of the keyword) and with a simple space if they are optional (in which case the space is ALSO not part of the actual keyword).

Double-quotes to protect spaces and %-encoding are NOT used internally (only in URI-strings).

Definition at line 185 of file fs_api.h.

Referenced by make_file(), start_download(), uri_ksk_parse(), and uri_ksk_to_string().

◆ keywordCount

unsigned int GNUNET_FS_Uri::keywordCount

Size of the keywords array.

Definition at line 190 of file fs_api.h.

Referenced by uri_ksk_to_string().

◆ ksk

struct { ... } GNUNET_FS_Uri::ksk

◆ ns

struct GNUNET_CRYPTO_EcdsaPublicKey GNUNET_FS_Uri::ns

Identifier of the namespace.

Definition at line 198 of file fs_api.h.

◆ identifier

char* GNUNET_FS_Uri::identifier

Human-readable identifier chosen for this entry in the namespace.

Definition at line 204 of file fs_api.h.

◆ sks

struct { ... } GNUNET_FS_Uri::sks

◆ chk

struct FileIdentifier GNUNET_FS_Uri::chk

◆ loc

struct Location GNUNET_FS_Uri::loc

◆ data

union { ... } GNUNET_FS_Uri::data

Referenced by create_loc_uri(), decrypt_block_with_keyword(), deserialize_search_result(), deserialize_unindex_file(), gather_uri_data(), getopt_set_keywords(), GNUNET_FS_download_start_task_(), GNUNET_FS_publish_sks(), GNUNET_FS_publish_stop(), GNUNET_FS_search_result_sync_(), GNUNET_FS_search_signal_suspend_(), GNUNET_FS_search_start_searching_(), GNUNET_FS_search_stop(), GNUNET_FS_tree_encoder_next(), GNUNET_FS_unindex_do_remove_kblocks_(), GNUNET_FS_uri_chk_get_file_size(), GNUNET_FS_uri_destroy(), GNUNET_FS_uri_dup(), GNUNET_FS_uri_ksk_add_keyword(), GNUNET_FS_uri_ksk_create_from_args(), GNUNET_FS_uri_ksk_create_from_meta_data(), GNUNET_FS_uri_ksk_get_keyword_count(), GNUNET_FS_uri_ksk_get_keywords(), GNUNET_FS_uri_ksk_merge(), GNUNET_FS_uri_ksk_remove_keyword(), GNUNET_FS_uri_ksk_to_string_fancy(), GNUNET_FS_uri_loc_create(), GNUNET_FS_uri_loc_get_expiration(), GNUNET_FS_uri_loc_get_peer_identity(), GNUNET_FS_uri_loc_get_uri(), GNUNET_FS_uri_sks_create(), GNUNET_FS_uri_sks_get_content_id(), GNUNET_FS_uri_sks_get_namespace(), GNUNET_FS_uri_test_equal(), GNUNET_FS_uri_test_ksk(), GNUNET_FS_uri_to_key(), handle_client_loc_sign(), handle_signature_response(), process_kblock_for_unindex(), process_ksk_result(), process_result_with_request(), process_sblock(), process_sks_result(), publish_ksk_cont(), reconstruct_cb(), schedule_transmit_search_request(), try_match_block(), update_sre_result_maps(), uri_chk_parse(), uri_chk_to_string(), uri_ksk_parse(), uri_ksk_to_string(), uri_loc_parse(), uri_loc_to_string(), uri_sks_parse(), and uri_sks_to_string().


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