Helper library for handling HELLO URIs. More...
#include "gnunet_util_lib.h"
Go to the source code of this file.
Macros | |
#define | GNUNET_HELLO_ADDRESS_EXPIRATION |
For how long are HELLO signatures valid? More... | |
Typedefs | |
typedef void(* | GNUNET_HELLO_UriCallback) (void *cls, const struct GNUNET_PeerIdentity *pid, const char *uri) |
Callback function used to extract URIs from a builder. More... | |
Functions | |
struct GNUNET_HELLO_Builder * | GNUNET_HELLO_builder_new (const struct GNUNET_PeerIdentity *pid) |
Allocate builder. More... | |
struct GNUNET_HELLO_Builder * | GNUNET_HELLO_builder_from_parser (const struct GNUNET_HELLO_Parser *parser) |
Allocate builder from parser. More... | |
const struct GNUNET_PeerIdentity * | GNUNET_HELLO_parser_get_id (const struct GNUNET_HELLO_Parser *parser) |
Get the PeerIdentity for this builder. More... | |
void | GNUNET_HELLO_builder_free (struct GNUNET_HELLO_Builder *builder) |
Release resources of a builder. More... | |
void | GNUNET_HELLO_parser_free (struct GNUNET_HELLO_Parser *parser) |
Release resources of a builder. More... | |
struct GNUNET_HELLO_Parser * | GNUNET_HELLO_parser_from_msg (const struct GNUNET_MessageHeader *msg) |
Parse msg. More... | |
struct GNUNET_HELLO_Parser * | GNUNET_HELLO_parser_from_block (const void *block, size_t block_size) |
Parse block. More... | |
struct GNUNET_HELLO_Parser * | GNUNET_HELLO_parser_from_url (const char *url) |
Parse GNUnet HELLO url. More... | |
struct GNUNET_TIME_Absolute | GNUNET_HELLO_get_expiration_time_from_msg (const struct GNUNET_MessageHeader *msg) |
Get the expiration time for this HELLO. More... | |
struct GNUNET_MQ_Envelope * | GNUNET_HELLO_builder_to_env (const struct GNUNET_HELLO_Builder *builder, const struct GNUNET_CRYPTO_EddsaPrivateKey *priv, struct GNUNET_TIME_Relative expiration_time) |
Generate envelope with GNUnet HELLO message (including peer ID) from a builder. More... | |
struct GNUNET_MQ_Envelope * | GNUNET_HELLO_parser_to_env (const struct GNUNET_HELLO_Parser *parser) |
Generate envelope with GNUnet HELLO message (including peer ID) from a parser. More... | |
struct GNUNET_MessageHeader * | GNUNET_HELLO_builder_to_dht_hello_msg (const struct GNUNET_HELLO_Builder *builder, const struct GNUNET_CRYPTO_EddsaPrivateKey *priv, struct GNUNET_TIME_Relative expiration_time) |
Generate DHT HELLO message (without peer ID) from a builder. More... | |
char * | GNUNET_HELLO_parser_to_url (const struct GNUNET_HELLO_Parser *parser) |
Generate GNUnet HELLO URI from a parser. More... | |
char * | GNUNET_HELLO_builder_to_url (const struct GNUNET_HELLO_Builder *builder, const struct GNUNET_CRYPTO_EddsaPrivateKey *priv) |
Generate GNUnet HELLO URI from a builder. More... | |
char * | GNUNET_HELLO_builder_to_url2 (const struct GNUNET_HELLO_Builder *builder, const struct GNUNET_CRYPTO_EddsaPrivateKey *priv, struct GNUNET_TIME_Relative expiration_time) |
Generate GNUnet HELLO URI from a builder. More... | |
enum GNUNET_GenericReturnValue | GNUNET_HELLO_builder_to_block (const struct GNUNET_HELLO_Builder *builder, const struct GNUNET_CRYPTO_EddsaPrivateKey *priv, void *block, size_t *block_size, struct GNUNET_TIME_Relative expiration_time) |
Generate DHT block from a builder. More... | |
enum GNUNET_GenericReturnValue | GNUNET_HELLO_parser_to_block (const struct GNUNET_HELLO_Parser *parser, void *block, size_t *block_size) |
Generate DHT block from a parser. More... | |
enum GNUNET_GenericReturnValue | GNUNET_HELLO_builder_add_address (struct GNUNET_HELLO_Builder *builder, const char *address) |
Add individual address to the builder. More... | |
enum GNUNET_GenericReturnValue | GNUNET_HELLO_builder_del_address (struct GNUNET_HELLO_Builder *builder, const char *address) |
Remove individual address from the builder. More... | |
const struct GNUNET_PeerIdentity * | GNUNET_HELLO_parser_iterate (const struct GNUNET_HELLO_Parser *parser, GNUNET_HELLO_UriCallback uc, void *uc_cls) |
Iterate over URIs in a parser. More... | |
enum GNUNET_GenericReturnValue | GNUNET_HELLO_dht_msg_to_block (const struct GNUNET_MessageHeader *hello, const struct GNUNET_PeerIdentity *pid, void **block, size_t *block_size, struct GNUNET_TIME_Absolute *block_expiration) |
Convert a DHT hello message to a HELLO block. More... | |
char * | GNUNET_HELLO_address_to_prefix (const char *address) |
Given an address as a string, extract the prefix that identifies the communicator offering transmissions to that address. More... | |
void | GNUNET_HELLO_sign_address (const char *address, enum GNUNET_NetworkType nt, struct GNUNET_TIME_Absolute mono_time, const struct GNUNET_CRYPTO_EddsaPrivateKey *private_key, void **result, size_t *result_size) |
Build address record by signing raw information with private key. More... | |
Helper library for handling HELLO URIs.
Definition in file gnunet_hello_uri_lib.h.