Set a name on all connect blocks

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12065 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
danieldg 2009-11-09 23:55:27 +00:00
parent eaace5ed7c
commit bee3f8676a

View File

@ -361,13 +361,15 @@ void ServerConfig::CrossCheckConnectBlocks(ServerConfig* current)
} }
std::string name = tag->getString("name"); std::string name = tag->getString("name");
if (!name.empty()) if (name.empty())
{ {
if (names.find(name) != names.end()) name = "unnamed-" + ConvToStr(i);
throw CoreException("Two connect classes with name \"" + name + "\" defined!");
names[name] = i;
} }
if (names.find(name) != names.end())
throw CoreException("Two connect classes with name \"" + name + "\" defined!");
names[name] = i;
std::string mask, typeMask; std::string mask, typeMask;
char type; char type;
@ -393,8 +395,7 @@ void ServerConfig::CrossCheckConnectBlocks(ServerConfig* current)
new ConnectClass(tag, type, mask, *parent) : new ConnectClass(tag, type, mask, *parent) :
new ConnectClass(tag, type, mask); new ConnectClass(tag, type, mask);
if (!name.empty()) me->name = name;
me->name = name;
tag->readString("password", me->pass); tag->readString("password", me->pass);
tag->readString("hash", me->hash); tag->readString("hash", me->hash);