From 568a4e0a0499233c6d8bf07c01903ca9f21361c6 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Sat, 20 Mar 2004 20:28:53 +0000 Subject: [PATCH] warn and fail if server chose a nickname with illegal characters svn:r1318 --- src/or/config.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/or/config.c b/src/or/config.c index 7434dfd2f3..799eb97966 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -568,9 +568,15 @@ int getconfig(int argc, char **argv, or_options_t *options) { result = -1; } - if(options->ORPort && options->Nickname == NULL) { - log_fn(LOG_WARN,"Nickname required if ORPort is set, but not found."); - result = -1; + if (options->ORPort) { + if (options->Nickname == NULL) { + log_fn(LOG_WARN,"Nickname required if ORPort is set, but not found."); + result = -1; + } else if (strspn(options->Nickname, LEGAL_NICKNAME_CHARACTERS) != + strlen(options->Nickname)) { + log_fn(LOG_WARN, "Nickname '%s' contains illegal characters.", options->Nickname); + result = -1; + } } if(options->ORPort) { /* get an IP for ourselves */