Commit 888a0be0 authored by Nick Mathewson's avatar Nick Mathewson
Browse files

Define a "dircache" module.

For now, this module is enabled whenever the relay module is
enabled, and disabled whenever the relay module is disabled.  Though
they are logically separate, the use cases for running one without
the other are rare enough that we don't really want to support
compiling them independently.
parent a48cb9fa
......@@ -278,7 +278,7 @@ dnl Tor modules options. These options are namespaced with --disable-module-XXX
dnl ---
dnl All our modules.
m4_define(MODULES, relay dirauth)
m4_define(MODULES, relay dirauth dircache)
dnl Relay module.
AC_ARG_ENABLE([module-relay],
......@@ -289,6 +289,14 @@ AM_COND_IF(BUILD_MODULE_RELAY,
AC_DEFINE([HAVE_MODULE_RELAY], [1],
[Compile with Relay feature support]))
dnl Dircache module. (This cannot be enabled or disabled independently of
dnl the relay module.)
AM_CONDITIONAL(BUILD_MODULE_DIRCACHE,
[test "x$enable_module_relay" != "xno"])
AM_COND_IF(BUILD_MODULE_DIRCACHE,
AC_DEFINE([HAVE_MODULE_DIRCACHE], [1],
[Compile with directory cache support]))
dnl Directory Authority module.
AC_ARG_ENABLE([module-dirauth],
AS_HELP_STRING([--disable-module-dirauth],
......
......@@ -11,12 +11,18 @@ selectively enable or disable, at `configure` time.
Currently, tor has these modules:
- Relay subsystem (relay)
- Directory cache system (dircache).
- Directory Authority subsystem (dirauth)
dirauth is located in its own directory in `src/feature/dirauth/`.
The dirauth code is located in its own directory in `src/feature/dirauth/`.
Relay is located in directories named `src/*/*relay` and `src/*/*dircache`,
which are being progressively refactored and disabled.
The relay code is located in a directory named `src/*/*relay`, which is
being progressively refactored and disabled.
The dircache code is located in `src/*/*dircache`. Right now, it is
disabled if and only if the relay module is disabled. (We are treating
them as separate modules because they are logically independent, not
because you would actually want to run one without the other.)
To disable a module, pass `--disable-module-{dirauth,relay}` at configure
time. All modules are currently enabled by default.
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment