static int resetSignals = 0;
static char *ourName = NULL;
+static void RotateLogFile(void);
+
void
SetLogThreadNumProgram(int (*func) (void) )
{
threadIdLogs = 0;
#endif
if (mrafsStyleLogs) {
- LOCK_SERVERLOG();
- if (ourName != NULL) {
- OpenLog(ourName);
- }
- UNLOCK_SERVERLOG();
+ RotateLogFile();
}
} /*ResetDebug_Signal */
}
/*!
+ * Rotate the log file by renaming then truncating.
+ */
+static void
+RotateLogFile(void)
+{
+ LOCK_SERVERLOG();
+ if (ourName != NULL) {
+ if (serverLogFD >= 0) {
+ close(serverLogFD);
+ serverLogFD = -1;
+ }
+ OpenLog(ourName);
+ }
+ UNLOCK_SERVERLOG();
+}
+
+/*!
* Close the server log file.
*
* \note Must be preceeded by OpenLog().