tor  master
Data Fields
rend_intro_point_t Struct Reference

#include <or.h>

Collaboration diagram for rend_intro_point_t:
Collaboration graph
[legend]

Data Fields

extend_info_textend_info
 
crypto_pk_tintro_key
 
unsigned int timed_out: 1
 
unsigned int unreachable_count: 3
 
unsigned int listed_in_last_desc: 1
 
replaycache_t * accepted_intro_rsa_parts
 
int accepted_introduce2_count
 
int max_introductions
 
time_t time_published
 
time_t time_to_expire
 
unsigned int circuit_retries
 
unsigned int circuit_established:1
 

Detailed Description

Introduction point information. Used both in rend_service_t (on the service side) and in rend_service_descriptor_t (on both the client and service side).

Field Documentation

◆ accepted_intro_rsa_parts

replaycache_t* accepted_intro_rsa_parts

(Service side only) A replay cache recording the RSA-encrypted parts of INTRODUCE2 cells this intro point's circuit has received. This is used to prevent replay attacks.

◆ accepted_introduce2_count

int accepted_introduce2_count

(Service side only) Count of INTRODUCE2 cells accepted from this intro point.

◆ circuit_established

unsigned int circuit_established

(Service side only) Set if this intro point has an established circuit and unset if it doesn't.

◆ circuit_retries

unsigned int circuit_retries

(Service side only) The amount of circuit creation we've made to this intro point. This is incremented every time we do a circuit relaunch on this object which is triggered when the circuit dies but the node is still in the consensus. After MAX_INTRO_POINT_CIRCUIT_RETRIES, we give up on it.

◆ extend_info

extend_info_t* extend_info

Extend info for connecting to this introduction point via a multi-hop path.

◆ intro_key

crypto_pk_t* intro_key

Introduction key that replaces the service key, if this descriptor is V2.

◆ listed_in_last_desc

unsigned int listed_in_last_desc

(Service side only) Flag indicating that this intro point was included in the last HS descriptor we generated.

◆ max_introductions

int max_introductions

(Service side only) Maximum number of INTRODUCE2 cells that this IP will accept. This is a random value between INTRO_POINT_MIN_LIFETIME_INTRODUCTIONS and INTRO_POINT_MAX_LIFETIME_INTRODUCTIONS.

◆ time_published

time_t time_published

(Service side only) The time at which this intro point was first published, or -1 if this intro point has not yet been published.

◆ time_to_expire

time_t time_to_expire

(Service side only) The time at which this intro point should (start to) expire, or -1 if we haven't decided when this intro point should expire.

◆ timed_out

unsigned int timed_out

(Client side only) Flag indicating that a timeout has occurred after sending an INTRODUCE cell to this intro point. After a timeout, an intro point should not be tried again during the same hidden service connection attempt, but it may be tried again during a future connection attempt.

◆ unreachable_count

unsigned int unreachable_count

(Client side only) The number of times we have failed to build a circuit to this intro point for some reason other than our circuit-build timeout. See also MAX_INTRO_POINT_REACHABILITY_FAILURES.


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