From ff3eb8e023f79edf7b04bf12f770bb3df558c033 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Thu, 8 Sep 2011 12:04:34 -0400 Subject: [PATCH] Forbid remapping of * It might be nice to support this someday, but for now it would fail with an infinite remap cycle. (If I say "remap * *.foo.exit", then example.com -> example.com.foo.exit -> example.com.foo.exit.foo.exit -> example.com.foo.exit.foo.exit.foo.exit -> ...) --- src/or/config.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/or/config.c b/src/or/config.c index ef54dcbff2..f841f932c5 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -4477,6 +4477,11 @@ config_register_addressmaps(const or_options_t *options) goto cleanup; } + if (!strcmp(to, "*") || !strcmp(from, "*")) { + log_warn(LD_CONFIG,"MapAddress '%s' is unsupported - can't remap from " + "or to *. Ignoring.",opt->value); + goto cleanup; + } /* Detect asterisks in expressions of type: '*.example.com' */ if (!strncmp(from,"*.",2)) { from += 2;