tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

hs_ob.h (1030B)


      1 /* Copyright (c) 2020-2021, The Tor Project, Inc. */
      2 /* See LICENSE for licensing information */
      3 
      4 /**
      5 * \file hs_ob.h
      6 * \brief Header file for the specific code for onion balance.
      7 **/
      8 
      9 #ifndef TOR_HS_OB_H
     10 #define TOR_HS_OB_H
     11 
     12 #include "feature/hs/hs_service.h"
     13 
     14 bool hs_ob_service_is_instance(const hs_service_t *service);
     15 
     16 int hs_ob_parse_config_file(hs_service_config_t *config);
     17 
     18 struct hs_subcredential_t;
     19 
     20 void hs_ob_free_all(void);
     21 
     22 void hs_ob_refresh_keys(hs_service_t *service);
     23 
     24 #ifdef HS_OB_PRIVATE
     25 
     26 STATIC size_t compute_subcredentials(const hs_service_t *service,
     27                                   struct hs_subcredential_t **subcredentials);
     28 
     29 typedef struct ob_options_t {
     30  /** Magic number to identify the structure in memory. */
     31  uint32_t magic_;
     32  /** Master Onion Address(es). */
     33  struct config_line_t *MasterOnionAddress;
     34  /** Extra Lines for configuration we might not know. */
     35  struct config_line_t *ExtraLines;
     36 } ob_options_t;
     37 
     38 #endif /* defined(HS_OB_PRIVATE) */
     39 
     40 #endif /* !defined(TOR_HS_OB_H) */