diff options
-rw-r--r-- | data/example_new.conf | 7 | ||||
-rw-r--r-- | src/config.c | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/data/example_new.conf b/data/example_new.conf index f03cbabed..6f7c3ceb7 100644 --- a/data/example_new.conf +++ b/data/example_new.conf @@ -365,4 +365,11 @@ chanserv * and signkick. If you really want no defaults, use "none" by itself as the option. */ defaults="keeptopic peace secure securefounder signkick xop" + + /* + * The maximum number of channels which may be registered to a single nickname. This directive is optional, + * but recommended. If not set, there will be no restriction on the numbers of channels a single nickname + * can have registered. + */ + maxregistered = 20 } diff --git a/src/config.c b/src/config.c index ac8895c3d..60cd216f6 100644 --- a/src/config.c +++ b/src/config.c @@ -576,6 +576,7 @@ int ServerConfig::Read(bool bail) {"chanserv", "description", "Channel Registration Service", new ValueContainerChar(&desc_ChanServ), DT_CHARPTR | DT_NORELOAD, ValidateNotEmpty}, {"chanserv", "database", "chan.db", new ValueContainerChar(&ChanDBName), DT_CHARPTR, ValidateNotEmpty}, {"chanserv", "defaults", "keetopic secure securefounder signkick", new ValueContainerString(&CSDefaults), DT_BOOLEAN, NoValidation}, + {"chanserv", "maxregistered", "0", new ValueContainerInt(&CSMaxReg), DT_INTEGER, NoValidation}, {NULL, NULL, NULL, NULL, DT_NOTHING, NoValidation} }; /* These tags can occur multiple times, and therefore they have special code to read them @@ -1186,7 +1187,6 @@ Directive directives[] = { {"CSInhabit", {{PARAM_TIME, PARAM_RELOAD, &CSInhabit}}}, {"CSListMax", {{PARAM_POSINT, PARAM_RELOAD, &CSListMax}}}, {"CSListOpersOnly", {{PARAM_SET, PARAM_RELOAD, &CSListOpersOnly}}}, - {"CSMaxReg", {{PARAM_POSINT, 0, &CSMaxReg}}}, {"CSRestrictGetPass", {{PARAM_SET, PARAM_RELOAD, &CSRestrictGetPass}}}, {"CSOpersOnly", {{PARAM_SET, PARAM_RELOAD, &CSOpersOnly}}}, {"DefSessionLimit", {{PARAM_POSINT, 0, &DefSessionLimit}}}, |