Bug #1107: Complain if PublishServerDescriptor receives 0 or 1 in a list

0 or 1 should only be passed as the sole argument. Warn for now, reject
in 0.2.3.x.
This commit is contained in:
Chris Ball 2010-07-31 18:06:40 -04:00 committed by Nick Mathewson
parent fbfaa7bbc4
commit 600ba86f4a
2 changed files with 17 additions and 0 deletions

5
changes/bug1107 Normal file
View File

@ -0,0 +1,5 @@
o Minor bugfixes:
- Complain if PublishServerDescriptor is given multiple arguments that
include 0 or 1. This configuration will be rejected in future.
Bugfix in 0.2.0.1-alpha, closes bug 1107.

View File

@ -3578,6 +3578,18 @@ options_validate(or_options_t *old_options, or_options_t *options,
if (options->AccelDir && !options->AccelName)
REJECT("Can't use hardware crypto accelerator dir without engine name.");
if (options->PublishServerDescriptor)
SMARTLIST_FOREACH(options->PublishServerDescriptor, const char *, pubdes, {
if (!strcmp(pubdes, "1") || !strcmp(pubdes, "0"))
if (smartlist_len(options->PublishServerDescriptor) > 1) {
COMPLAIN("You have passed a list of multiple arguments to the "
"PublishServerDescriptor option that includes 0 or 1. "
"0 or 1 should only be used as the sole argument. "
"This configuration will be rejected in a future release.");
break;
}
});
return 0;
#undef REJECT
#undef COMPLAIN