diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-02-26 11:05:34 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-02-26 11:05:34 +0000 |
commit | 05008506691249a1fb7d3d46651a5e8610a17a48 (patch) | |
tree | 6ceae5520ef27cdbbb545435d5537c436505d672 /src/userprocess.cpp | |
parent | 30084fbe7eaa1269aa052d16eea8ddabbc820d94 (diff) |
Added ability to provide -logfile parameter on commandline
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3327 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/userprocess.cpp')
-rw-r--r-- | src/userprocess.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/userprocess.cpp b/src/userprocess.cpp index fae96721d..c53aaab0b 100644 --- a/src/userprocess.cpp +++ b/src/userprocess.cpp @@ -70,6 +70,7 @@ extern std::vector<InspSocket*> module_sockets; extern time_t TIME; extern time_t OLDTIME; extern std::vector<userrec*> local_users; +char LOG_FILE[MAXBUF]; extern InspIRCd* ServerInstance; extern ServerConfig *Config; @@ -364,9 +365,21 @@ void DoBackgroundUserStuff(time_t TIME) void OpenLog(char** argv, int argc) { - if (Config->logpath == "") + if (!*LOG_FILE) { - Config->logpath = GetFullProgDir(argv,argc) + "/ircd.log"; + if (Config->logpath == "") + { + Config->logpath = GetFullProgDir(argv,argc) + "/ircd.log"; + } + } + else + { + Config->log_file = fopen(LOG_FILE,"a+"); + if (!Config->log_file) + { + printf("ERROR: Could not write to logfile %s, bailing!\n\n",Config->logpath.c_str()); + Exit(ERROR); + } } Config->log_file = fopen(Config->logpath.c_str(),"a+"); if (!Config->log_file) |