Opened 6 weeks ago

#32349 assigned defect

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

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

Description

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 (0)

Note: See TracTickets for help on using tickets.