X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fhelperfuncs.cpp;h=9f3bca72917c47447087a6109ebb7647a5624cb5;hb=664f69890abbad7962bf42c599417dd767a84297;hp=d2c4c7c3ecd32760b847bba117f06047f0452676;hpb=ac71a039c396c323ec5e32e389f0a165a0e21473;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp index d2c4c7c3e..9f3bca729 100644 --- a/src/helperfuncs.cpp +++ b/src/helperfuncs.cpp @@ -11,10 +11,9 @@ * --------------------------------------------------- */ -/* $Core: libIRCDhelper */ +/* $Core */ #include "inspircd.h" -#include "wildcard.h" #include "xline.h" #include "exitcodes.h" @@ -307,37 +306,7 @@ bool InspIRCd::OpenLog(char**, int) { if (Config->logpath.empty()) { - std::string path = std::string(home) + "/.inspircd"; - // This tries to create the ~/.inspircd. If it succeeds, then we go ahead and use it. - // If it fails due to an existing target, then we use it anyway. - // Either way, we make sure we can get write access to the log at this point. - if (!mkdir(path.c_str(), 0700) || errno == EEXIST) - { - /* Log to ~/.inspircd/ircd.log */ - Config->logpath = path + "/startup.log"; - FILE* fd = fopen(Config->logpath.c_str(), "a+"); - if (!fd) - { - // Could not get write access... Why? - if (errno == ENOTDIR) - // ~/.inspircd is not actually a directory! - printf("\nWARNING: Unable to create directory: %s (Exists and is not a directory)\n", path.c_str()); - else - // Not writable for some other reason (no +w access, readonly fs, file too big, whatever). - printf("\nWARNING: No write access to %s (%s)\n", Config->logpath.c_str(), strerror(errno)); - Config->logpath = "./startup.log"; - } - else - { - Config->log_file = fd; - } - } - else - { - /* Couldn't make ~/.inspircd directory, log to current dir */ - Config->logpath = "./startup.log"; - printf("\nWARNING: Unable to create directory: %s (%s)\n", path.c_str(), strerror(errno)); - } + Config->logpath = "./startup.log"; } if (!Config->log_file) @@ -470,15 +439,16 @@ std::string InspIRCd::TimeString(time_t curtime) } // You should only pass a single character to this. -void InspIRCd::AddExtBanChar(const char *c) +void InspIRCd::AddExtBanChar(char c) { std::string &tok = Config->data005; + std::string::size_type ebpos; - if (tok.find(" EXTBAN=:") == std::string::npos) + if ((ebpos = tok.find(" EXTBAN=,")) == std::string::npos) { - tok.append(" EXTBAN=:"); - tok.append(c); + tok.append(" EXTBAN=,"); + tok.push_back(c); } else - tok.insert(tok.find(" EXTBAN=:") + 9, c); + tok.insert(ebpos + 9, 1, c); }