Tor  0.4.3.0-alpha-dev
Functions
rendmid.c File Reference

Implement introductions points and rendezvous points. More...

#include "core/or/or.h"
#include "core/or/channel.h"
#include "core/or/circuitlist.h"
#include "core/or/circuituse.h"
#include "app/config/config.h"
#include "lib/crypt_ops/crypto_cipher.h"
#include "core/or/dos.h"
#include "core/or/relay.h"
#include "feature/rend/rendmid.h"
#include "feature/stats/rephist.h"
#include "feature/hs/hs_circuitmap.h"
#include "feature/hs/hs_dos.h"
#include "feature/hs/hs_intropoint.h"
#include "core/or/or_circuit_st.h"

Go to the source code of this file.

Functions

int rend_mid_establish_intro_legacy (or_circuit_t *circ, const uint8_t *request, size_t request_len)
 
int rend_mid_introduce_legacy (or_circuit_t *circ, const uint8_t *request, size_t request_len)
 
int rend_mid_establish_rendezvous (or_circuit_t *circ, const uint8_t *request, size_t request_len)
 
int rend_mid_rendezvous (or_circuit_t *circ, const uint8_t *request, size_t request_len)
 

Detailed Description

Implement introductions points and rendezvous points.

Definition in file rendmid.c.

Function Documentation

◆ rend_mid_establish_intro_legacy()

int rend_mid_establish_intro_legacy ( or_circuit_t circ,
const uint8_t *  request,
size_t  request_len 
)

Respond to an ESTABLISH_INTRO cell by checking the signed data and setting the circuit's purpose and service pk digest.

Definition at line 30 of file rendmid.c.

◆ rend_mid_establish_rendezvous()

int rend_mid_establish_rendezvous ( or_circuit_t circ,
const uint8_t *  request,
size_t  request_len 
)

Process an ESTABLISH_RENDEZVOUS cell by setting the circuit's purpose and rendezvous cookie.

Definition at line 234 of file rendmid.c.

◆ rend_mid_introduce_legacy()

int rend_mid_introduce_legacy ( or_circuit_t circ,
const uint8_t *  request,
size_t  request_len 
)

Process an INTRODUCE1 cell by finding the corresponding introduction circuit, and relaying the body of the INTRODUCE1 cell inside an INTRODUCE2 cell.

Definition at line 143 of file rendmid.c.

◆ rend_mid_rendezvous()

int rend_mid_rendezvous ( or_circuit_t circ,
const uint8_t *  request,
size_t  request_len 
)

Process a RENDEZVOUS1 cell by looking up the correct rendezvous circuit by its relaying the cell's body in a RENDEZVOUS2 cell, and connecting the two circuits.

Definition at line 307 of file rendmid.c.