]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/inspircd_io.cpp
Made setrlimit a commandline option
[user/henk/code/inspircd.git] / src / inspircd_io.cpp
index fca22e3bed64095133987734b038d2382de77fa8..00842b697d0d6f098857f18d7d9c7b39bd6b07d1 100644 (file)
@@ -33,6 +33,7 @@ extern FILE *log_file;
 extern int boundPortCount;
 extern int openSockfd[MAXSOCKS];
 extern time_t TIME;
+extern bool unlimitcore;
 
 void WriteOpers(char* text, ...);
 
@@ -126,17 +127,20 @@ int DaemonSeed (void)
        
        setpriority(PRIO_PROCESS,(int)getpid(),15); /* ircd sets to low process priority so it doesnt hog the box */
 
-       rlimit rl;
-       if (getrlimit(RLIMIT_CORE, &rl) == -1)
+       if (unlimitcore)
        {
-               log(DEFAULT,"Failed to getrlimit()!");
-               return(FALSE);
-       }
-       else
-       {
-               rl.rlim_cur = rl.rlim_max;
-               if (setrlimit(RLIMIT_CORE, &rl) == -1)
-                       log(DEFAULT,"setrlimit() failed, cannot increase coredump size.");
+               rlimit rl;
+               if (getrlimit(RLIMIT_CORE, &rl) == -1)
+               {
+                       log(DEFAULT,"Failed to getrlimit()!");
+                       return(FALSE);
+               }
+               else
+               {
+                       rl.rlim_cur = rl.rlim_max;
+                       if (setrlimit(RLIMIT_CORE, &rl) == -1)
+                               log(DEFAULT,"setrlimit() failed, cannot increase coredump size.");
+               }
        }
   
        return (TRUE);