Add documentation on {C,S}METHOD parsing behaviour

This commit is contained in:
Cecylia Bocovich 2021-11-23 10:40:43 -05:00
parent 809b636b6e
commit 0d3894dbbc
No known key found for this signature in database
GPG Key ID: 009DE379FD9B7B90
2 changed files with 12 additions and 0 deletions

4
changes/ticket7362 Normal file
View File

@ -0,0 +1,4 @@
o Minor bugfix (pluggable transport):
- Do not kill a managed proxy if one of its transport configurations
emits a method error. Instead log a warning and continue processing
method arguments. Closes ticket 7362.

View File

@ -903,12 +903,20 @@ handle_proxy_line(const char *line, managed_proxy_t *mp)
if (mp->conf_state != PT_PROTO_ACCEPTING_METHODS)
goto err;
/* Log the error but do not kill the managed proxy.
* A proxy may contain several transports and if one
* of them is misconfigured, we still want to use
* the other transports. A managed proxy with no usable
* transports will log a warning.
* See https://gitlab.torproject.org/tpo/core/tor/-/issues/7362
* */
parse_client_method_error(line);
return;
} else if (!strcmpstart(line, PROTO_SMETHOD_ERROR)) {
if (mp->conf_state != PT_PROTO_ACCEPTING_METHODS)
goto err;
/* Log the error but do not kill the managed proxy */
parse_server_method_error(line);
return;
} else if (!strcmpstart(line, PROTO_CMETHOD)) {