Skip to content

Commit

Permalink
Bug 32040: Change client-side machine application rules
Browse files Browse the repository at this point in the history
No protover handshake required!
  • Loading branch information
Mike Perry committed Jun 9, 2020
1 parent 1814a67 commit 2b7b8a7
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion src/core/or/circuitpadding_machines.c
Expand Up @@ -104,8 +104,14 @@ circpad_machine_client_hide_intro_circuits(smartlist_t *machines_sl)
*/
client_machine->conditions.apply_purpose_mask =
circpad_circ_purpose_to_mask(CIRCUIT_PURPOSE_C_INTRODUCE_ACK_WAIT)|
circpad_circ_purpose_to_mask(CIRCUIT_PURPOSE_C_INTRODUCE_ACKED)|
circpad_circ_purpose_to_mask(CIRCUIT_PURPOSE_C_CIRCUIT_PADDING);

This comment has been minimized.

Copy link
@asn-d6

asn-d6 Jun 9, 2020

There is some trailing whitespace here.

This comment has been minimized.

Copy link
@mikeperry-tor

mikeperry-tor Jun 9, 2020

Owner

c681264

I am still mulling over the rules there. I think that we should strip down the apply_purpose_mask in each of the rend and intro machines to be only the initial purpose, and move the rest to keep, but the unit tests disagree.

/* If the client purpose changes back to CIRCUIT_PURPOSE_C_INTRODUCING,
* or transitions to CIRCUIT_PURPOSE_C_INTRODUCE_ACKED, keep the machine
* alive, but do not launch new machines for these purposes */
client_machine->conditions.keep_purpose_mask =
circpad_circ_purpose_to_mask(CIRCUIT_PURPOSE_C_INTRODUCE_ACKED)|
circpad_circ_purpose_to_mask(CIRCUIT_PURPOSE_C_INTRODUCING);

/* Keep the circuit alive even after the introduction has been finished,
* otherwise the short-term lifetime of the circuit will blow our cover */
Expand Down

0 comments on commit 2b7b8a7

Please sign in to comment.