浏览代码

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 -> ...)
Nick Mathewson 14 年之前
父节点
当前提交
ff3eb8e023
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      src/or/config.c

+ 5 - 0
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;