Opened 12 months ago

Last modified 9 months ago

#32349 assigned defect

hs-v2: Intro point circuit TIMEOUT failure is not reported

Reported by: dgoulet Owned by: dgoulet
Priority: Medium Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: 035-backport, 040-backport, 041-backport, 042-backport, tor-hs, 043-deferred
Cc: arma Actual Points:
Parent ID: Points: 0.1
Reviewer: asn Sponsor: Sponsor27-can


This was found while I was working on #32020.

For v2, we report a TIMEOUT circuit failure within circuit_about_to_free(). The following code is the snippet on how we check if the circuit timed out:

int reason = circ->marked_for_close_reason;
int timed_out = (reason == END_CIRC_REASON_TIMEOUT);

However, in circuit_mark_for_close_(), if the circuit is an origin one, which is the case for all HS client circuit, the marked_for_close_reason is set to END_CIRC_REASON_NONE so we don't send back that reason back within the destroy cell.

The fix is that we should be looking at marked_for_close_orig_reason instead.

We need to backport this.

Child Tickets

Change History (2)

comment:1 Changed 9 months ago by nickm

Keywords: 043-deferred added

All 0.4.3.x tickets without 043-must, 043-should, or 043-can are about to be deferred.

comment:2 Changed 9 months ago by nickm

Milestone: Tor: 0.4.3.x-finalTor: unspecified
Note: See TracTickets for help on using tickets.