throw CoreException("You must restart to change the server id");
std::string casemapping = options->getString("casemapping");
- if (!casemapping.empty() && casemapping != CaseMapping)
+ // Ignore this value if CaseMapping is set to something the core doesn't provide (i.e., m_nationalchars).
+ if (!casemapping.empty() && casemapping != CaseMapping && (CaseMapping == "ascii" || CaseMapping == "rfc1459"))
throw CoreException("You must restart to change the server casemapping");
}
ServerInstance->BindPorts(pl);
if (pl.size())
{
- errstr << "Not all your client ports could be bound." << std::endl
- << "The following port(s) failed to bind:" << std::endl;
-
- int j = 1;
- for (FailedPortList::iterator i = pl.begin(); i != pl.end(); i++, j++)
+ std::cout << "Warning! Some of your listener" << (pl.size() == 1 ? "s" : "") << " failed to bind:" << std::endl;
+ for (FailedPortList::const_iterator iter = pl.begin(); iter != pl.end(); ++iter)
{
- errstr << j << ".\tAddress: " << i->first.str() << "\tReason: " << strerror(i->second) << std::endl;
+ const FailedPort& fp = *iter;
+ errstr << " " << fp.sa.str() << ": " << strerror(fp.error) << std::endl
+ << " " << "Created from <bind> tag at " << fp.tag->getTagLocation() << std::endl;
}
}
}
- User* user = useruid.empty() ? NULL : ServerInstance->FindNick(useruid);
+ User* user = useruid.empty() ? NULL : ServerInstance->FindUUID(useruid);
if (!valid)
{
ServerInstance->Users.RehashCloneCounts();
ServerInstance->XLines->CheckELines();
ServerInstance->XLines->ApplyLines();
- User* user = ServerInstance->FindNick(TheUserUID);
+ User* user = ServerInstance->FindUUID(TheUserUID);
ConfigStatus status(user);
const ModuleManager::ModuleMap& mods = ServerInstance->Modules->GetModules();