X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fconfigreader.cpp;h=2ee6ace26e81bb942791186fc82fd7f5fe0f5a40;hb=d0a4ecd0550458aae2b75ae5612e342204fd041b;hp=81ae1e6c0b1a83a795273859525303214df0395e;hpb=8528562075a54dbb8fc40d100e55e6a8af8067c4;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/configreader.cpp b/src/configreader.cpp index 81ae1e6c0..2ee6ace26 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -36,7 +36,7 @@ bool DoneELine(ServerConfig* conf, const char* tag); ServerConfig::ServerConfig(InspIRCd* Instance) : ServerInstance(Instance) { this->ClearStack(); - *ServerName = *Network = *ServerDesc = *AdminName = '\0'; + *sid = *ServerName = *Network = *ServerDesc = *AdminName = '\0'; *HideWhoisServer = *AdminEmail = *AdminNick = *diepass = *restartpass = *FixedQuit = *HideKillsServer = '\0'; *DefaultModes = *CustomVersion = *motd = *rules = *PrefixQuit = *DieValue = *DNSServer = '\0'; *UserStats = *ModPath = *MyExecutable = *DisabledCommands = *PID = *SuffixQuit = '\0'; @@ -252,7 +252,7 @@ bool ValidateMaxTargets(ServerConfig* conf, const char*, const char*, ValueItem { if ((data.GetInteger() < 0) || (data.GetInteger() > 31)) { - conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value is greater than 31 or less than 0, set to 20."); + conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value is greater than 31 or less than 0, set to 20."); data.Set(20); } return true; @@ -262,7 +262,7 @@ bool ValidateSoftLimit(ServerConfig* conf, const char*, const char*, ValueItem & { if ((data.GetInteger() < 1) || (data.GetInteger() > conf->GetInstance()->SE->GetMaxFds())) { - conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value is greater than %d or less than 0, set to %d.",conf->GetInstance()->SE->GetMaxFds(),conf->GetInstance()->SE->GetMaxFds()); + conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value is greater than %d or less than 0, set to %d.",conf->GetInstance()->SE->GetMaxFds(),conf->GetInstance()->SE->GetMaxFds()); data.Set(conf->GetInstance()->SE->GetMaxFds()); } return true; @@ -271,7 +271,7 @@ bool ValidateSoftLimit(ServerConfig* conf, const char*, const char*, ValueItem & bool ValidateMaxConn(ServerConfig* conf, const char*, const char*, ValueItem &data) { if (data.GetInteger() > SOMAXCONN) - conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value may be higher than the system-defined SOMAXCONN value!"); + conf->GetInstance()->Logs->Log("CONFIG",DEFAULT,"WARNING: value may be higher than the system-defined SOMAXCONN value!"); return true; } @@ -344,6 +344,7 @@ bool ValidateServerName(ServerConfig* conf, const char*, const char*, ValueItem std::string moo = std::string(data.GetString()).append("."); data.Set(moo.c_str()); } + conf->ValidateHostname(data.GetString(), "server", "name"); return true; } @@ -361,7 +362,7 @@ bool ValidateMaxWho(ServerConfig* conf, const char*, const char*, ValueItem &dat { if ((data.GetInteger() > 65535) || (data.GetInteger() < 1)) { - conf->GetInstance()->Logs->Log("CONFIG",DEFAULT," size out of range, setting to default of 128."); + conf->GetInstance()->Logs->Log("CONFIG",DEFAULT," size out of range, setting to default of 128."); data.Set(128); } return true; @@ -762,11 +763,25 @@ void ServerConfig::Read(bool bail, User* user) static const char* Once[] = { "server", "admin", "files", "power", "options", NULL }; Deprecated ChangedConfig[] = { - {"options", "hidelinks", "has been moved to as of 1.2a3"}, - {"options", "hidewhois", "has been moved to as of 1.2a3"}, - {"options", "nouserdns", "has been moved to as of 1.2a3"}, - {"options", "maxwho", "has been moved to as of 1.2a3"}, - {NULL, NULL, NULL} + {"options", "hidelinks", "has been moved to as of 1.2a3"}, + {"options", "hidewhois", "has been moved to as of 1.2a3"}, + {"options", "userstats", "has been moved to as of 1.2a3"}, + {"options", "customversion", "has been moved to as of 1.2a3"}, + {"options", "hidesplits", "has been moved to as of 1.2a3"}, + {"options", "hidebans", "has been moved to as of 1.2a3"}, + {"options", "hidekills", "has been moved to as of 1.2a3"}, + {"options", "operspywhois", "has been moved to as of 1.2a3"}, + {"options", "announceinvites", "has been moved to as of 1.2a3"}, + {"options", "hidemodes", "has been moved to as of 1.2a3"}, + {"options", "maxtargets", "has been moved to as of 1.2a3"}, + {"options", "nouserdns", "has been moved to as of 1.2a3"}, + {"options", "maxwho", "has been moved to as of 1.2a3"}, + {"options", "softlimit", "has been moved to as of 1.2a3"}, + {"options", "somaxconn", "has been moved to as of 1.2a3"}, + {"options", "netbuffersize", "has been moved to as of 1.2a3"}, + {"options", "maxwho", "has been moved to as of 1.2a3"}, + {"options", "loglevel", "1.2 does not use the loglevel value. Please define tags instead."}, + {NULL, NULL, NULL} }; /* These tags can occur ONCE or not at all */ @@ -1318,9 +1333,8 @@ bool ServerConfig::LoadConf(ConfigDataHash &target, FILE* &conf, const char* fil include_stack.push_back(filename); /* Start reading characters... */ - while (!feof(conf)) + while ((ch = fgetc(conf)) != EOF) { - ch = fgetc(conf); /* * Fix for moronic windows issue spotted by Adremelech. * Some windows editors save text files as utf-16, which is @@ -1945,7 +1959,7 @@ bool ServerConfig::DirValid(const char* dirandfile) { #ifdef WINDOWS return true; -#endif +#else char work[1024]; char buffer[1024]; @@ -1996,6 +2010,7 @@ bool ServerConfig::DirValid(const char* dirandfile) { return false; } +#endif } std::string ServerConfig::GetFullProgDir()