[tor-commits] [tor/master] Always escape BridgeDistribution value from torrc in descriptors.

dgoulet at torproject.org dgoulet at torproject.org
Mon Jan 20 15:46:19 UTC 2020

commit 3f20a69afb666e4dcd43e2f9182692502300a58d
Author: Alexander Færøy <ahf at torproject.org>
Date:   Wed Jan 15 17:18:30 2020 +0000

    Always escape BridgeDistribution value from torrc in descriptors.
    When the BridgeDistribution value was added in commit
    ebab5215252f9fa810ae091c335c5ae6e619faaf the check for whether the value
    contains '\n' or '\r' was added as a requirement for whether or not the
    value should be escaped.
    This patch removes this check and makes sure we call `escaped()` on the
    value every time before we add it to a descriptor.
    See: https://bugs.torproject.org/32753
 src/feature/relay/router.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/feature/relay/router.c b/src/feature/relay/router.c
index e547b5a55..7ad0d1bd0 100644
--- a/src/feature/relay/router.c
+++ b/src/feature/relay/router.c
@@ -2914,9 +2914,8 @@ router_dump_router_to_string(routerinfo_t *router,
     } else {
       bd = "any";
-    if (strchr(bd, '\n') || strchr(bd, '\r'))
-      bd = escaped(bd);
-    smartlist_add_asprintf(chunks, "bridge-distribution-request %s\n", bd);
+    smartlist_add_asprintf(chunks, "bridge-distribution-request %s\n",
+                           escaped(bd));
   if (router->onion_curve25519_pkey) {

More information about the tor-commits mailing list