Opened 4 weeks ago

Closed 3 weeks ago

#30580 closed defect (fixed)

Tor rejects all POSTDESCRIPTOR controller requests

Reported by: teor Owned by: nickm
Priority: Medium Milestone: Tor: 0.4.1.x-final
Component: Core Tor/Tor Version: Tor: 0.4.1.1-alpha
Severity: Normal Keywords: 041-must, regression, 041-regression, asn-merge
Cc: catalyst Actual Points: 0.1
Parent ID: Points: 0.5
Reviewer: dgoulet Sponsor: Sponsor31-must

Description

In #30091, we replaced this code:

    if (!strcasecmpstart(option, "purpose=")) {
      option += strlen("purpose=");
      purpose = router_purpose_from_string(option);
      if (purpose == ROUTER_PURPOSE_UNKNOWN) {
        connection_printf_to_buf(conn, "552 Unknown purpose \"%s\"\r\n",
                                 option);
        goto done;
      }
    }

With this code:

  line = config_line_find_case(args->kwargs, "purpose");
  if (line) {
    purpose = router_purpose_from_string(line->value);
    connection_printf_to_buf(conn, "552 Unknown purpose \"%s\"\r\n",
                             line->value);
    goto done;
  }

There's no purpose check any more (if (purpose == ROUTER_PURPOSE_UNKNOWN) {), so Tor rejects all POSTDESCRIPTOR requests.

I'm assigning this bug to nickm and cc'ing catalyst, because they were the author and reviewer.

Child Tickets

Change History (5)

comment:1 Changed 4 weeks ago by nickm

Keywords: 041-regression added

comment:2 Changed 4 weeks ago by nickm

Actual Points: 0.20.1
Status: assignedneeds_review

comment:3 Changed 4 weeks ago by dgoulet

Reviewer: dgoulet
Status: needs_reviewmerge_ready

comment:4 Changed 4 weeks ago by nickm

Keywords: asn-merge added

comment:5 Changed 3 weeks ago by asn

Resolution: fixed
Status: merge_readyclosed

Merged.

Note: See TracTickets for help on using tickets.