Tor rejects all POSTDESCRIPTOR controller requests

In legacy/trac#30091 (moved), 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.