util: add CloseLog routine to close the server log
authorMichael Meffie <mmeffie@sinenomine.net>
Thu, 10 Sep 2015 01:24:04 +0000 (21:24 -0400)
committerBenjamin Kaduk <kaduk@mit.edu>
Thu, 3 Dec 2015 04:58:01 +0000 (23:58 -0500)
Add the missing complement to OpenLog().

Change-Id: I45e7e5d2da3241c163d2d4baa6b386167e90e582
Reviewed-on: http://gerrit.openafs.org/12002
Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

src/util/afsutil.h
src/util/serverLog.c

index eef5c1c..90c20fc 100644 (file)
@@ -56,6 +56,7 @@ extern void FSLog(const char *format, ...)
 extern int OpenLog(const char *filename);
 extern int ReOpenLog(const char *fileName);
 extern void SetupLogSignals(void);
+extern void CloseLog(void);
 
 #ifdef AFS_NT40_ENV
 #ifndef _MFC_VER
index 64f081d..5a6207b 100644 (file)
@@ -408,3 +408,24 @@ ReOpenLog(const char *fileName)
     UNLOCK_SERVERLOG();
     return serverLogFD < 0 ? -1 : 0;
 }
+
+/*!
+ * Close the server log file.
+ *
+ * \note Must be preceeded by OpenLog().
+ */
+void
+CloseLog(void)
+{
+    LOCK_SERVERLOG();
+#ifndef AFS_NT40_ENV
+    if (serverLogSyslog) {
+       closelog();
+    } else
+#endif
+    if (serverLogFD >= 0) {
+       close(serverLogFD);
+       serverLogFD = -1;
+    }
+    UNLOCK_SERVERLOG();
+}