summaryrefslogtreecommitdiff
path: root/src/userprocess.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-02-26 11:05:34 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-02-26 11:05:34 +0000
commit05008506691249a1fb7d3d46651a5e8610a17a48 (patch)
tree6ceae5520ef27cdbbb545435d5537c436505d672 /src/userprocess.cpp
parent30084fbe7eaa1269aa052d16eea8ddabbc820d94 (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.cpp17
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)