diff options
-rw-r--r-- | changes/bug9366 | 4 | ||||
-rw-r--r-- | src/or/config.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/changes/bug9366 b/changes/bug9366 new file mode 100644 index 0000000000..acc919e77f --- /dev/null +++ b/changes/bug9366 @@ -0,0 +1,4 @@ + o Minor features (usability): + - Warn and fail if a server is configured not to advertise any + ORPorts at all. (We need *something* to put in our descriptor, or + we just won't work.) diff --git a/src/or/config.c b/src/or/config.c index 72ceea395e..ef90f23e62 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -5509,6 +5509,13 @@ check_server_ports(const smartlist_t *ports, "listening on one."); r = -1; } + if (n_orport_listeners && !n_orport_advertised) { + log_warn(LD_CONFIG, "We are listening on an ORPort, but not advertising " + "any ORPorts. This will keep us from building a %s " + "descriptor, and make us impossible to use.", + options->BridgeRelay ? "bridge" : "router"); + r = -1; + } if (n_dirport_advertised && !n_dirport_listeners) { log_warn(LD_CONFIG, "We are advertising a DirPort, but not actually " "listening on one."); |