blob: 2128b4d1266948b26c21d7b83df3b3c1646faa7f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
/*
* This contains the definition of the RENDEZVOUS1/2 cell for onion service
* version 3 and onward. The following format is specified in proposal 224
* section 4.2.
*/
/* Rendezvous cookie length. */
const TRUNNEL_REND_COOKIE_LEN = 20;
/* The HANDSHAKE_INFO field layout is as follow:
* SERVER_PK [PK_PUBKEY_LEN bytes]
* AUTH [MAC_LEN bytes]
* This means, the size is 32 bytes + 32 bytes. */
const TRUNNEL_HANDSHAKE_INFO_LEN = 64;
/* RENDEZVOUS1 payload. See details in section 4.2. */
struct trn_cell_rendezvous1 {
/* The RENDEZVOUS_COOKIE field. */
u8 rendezvous_cookie[TRUNNEL_REND_COOKIE_LEN];
/* The HANDSHAKE_INFO field which has a variable length depending on the
* handshake type used. */
u8 handshake_info[];
};
/* RENDEZVOUS2 payload. See details in section 4.2. */
struct trn_cell_rendezvous2 {
/* The HANDSHAKE_INFO field. */
u8 handshake_info[TRUNNEL_HANDSHAKE_INFO_LEN];
};
|