tor  master
Data Structures | Macros | Typedefs | Enumerations | Functions
hs_cell.h File Reference

Header file containing cell data for the whole HS subsytem. More...

#include "or.h"
#include "hs_service.h"
Include dependency graph for hs_cell.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  hs_cell_introduce1_data_t
 
struct  hs_cell_introduce2_data_t
 

Macros

#define HS_CELL_INTRODUCE1_MIN_SIZE   246
 

Typedefs

typedef struct hs_cell_introduce1_data_t hs_cell_introduce1_data_t
 
typedef struct hs_cell_introduce2_data_t hs_cell_introduce2_data_t
 

Enumerations

enum  hs_cell_introd_ack_status_t { HS_CELL_INTRO_ACK_SUCCESS = 0x0000, HS_CELL_INTRO_ACK_FAILURE = 0x0001, HS_CELL_INTRO_ACK_BADFMT = 0x0002, HS_CELL_INTRO_ACK_NORELAY = 0x0003 }
 
enum  hs_cell_onion_key_type_t { HS_CELL_ONION_KEY_TYPE_NTOR = 1 }
 

Functions

ssize_t hs_cell_build_establish_intro (const char *circ_nonce, const hs_service_intro_point_t *ip, uint8_t *cell_out)
 
ssize_t hs_cell_build_rendezvous1 (const uint8_t *rendezvous_cookie, size_t rendezvous_cookie_len, const uint8_t *rendezvous_handshake_info, size_t rendezvous_handshake_info_len, uint8_t *cell_out)
 
ssize_t hs_cell_build_introduce1 (const hs_cell_introduce1_data_t *data, uint8_t *cell_out)
 
ssize_t hs_cell_build_establish_rendezvous (const uint8_t *rendezvous_cookie, uint8_t *cell_out)
 
ssize_t hs_cell_parse_intro_established (const uint8_t *payload, size_t payload_len)
 
ssize_t hs_cell_parse_introduce2 (hs_cell_introduce2_data_t *data, const origin_circuit_t *circ, const hs_service_t *service)
 
int hs_cell_parse_introduce_ack (const uint8_t *payload, size_t payload_len)
 
int hs_cell_parse_rendezvous2 (const uint8_t *payload, size_t payload_len, uint8_t *handshake_info, size_t handshake_info_len)
 
void hs_cell_introduce1_data_clear (hs_cell_introduce1_data_t *data)
 

Detailed Description

Header file containing cell data for the whole HS subsytem.