aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/or.h1
-rw-r--r--src/or/router.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/src/or/or.h b/src/or/or.h
index 0f5b2bb17b..f40511330a 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -4239,6 +4239,7 @@ int authdir_mode_tests_reachability(or_options_t *options);
int authdir_mode_bridge(or_options_t *options);
int server_mode(or_options_t *options);
+int public_server_mode(or_options_t *options);
int advertised_server_mode(void);
int proxy_mode(or_options_t *options);
void consider_publishable_server(int force);
diff --git a/src/or/router.c b/src/or/router.c
index 2afde746d4..45eeca09ff 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -954,6 +954,15 @@ server_mode(or_options_t *options)
return (options->ORPort != 0 || options->ORListenAddress);
}
+/** Return true iff we are trying to be a non-bridge server.
+ */
+int
+public_server_mode(or_options_t *options)
+{
+ if (!server_mode(options)) return 0;
+ return (!options->BridgeRelay);
+}
+
/** Remember if we've advertised ourselves to the dirservers. */
static int server_is_advertised=0;