new upstream release (3.3.0); modify package compatibility for Stretch
[ossec-hids.git] / src / monitord / compress_log.c
old mode 100755 (executable)
new mode 100644 (file)
index 7cf11bd..6631ce0
@@ -1,84 +1,78 @@
-/* @(#) $Id: compress_log.c,v 1.4 2009/06/24 17:06:27 dcid Exp $ */
-
 /* Copyright (C) 2009 Trend Micro Inc.
  * All right reserved.
  *
  * This program is a free software; you can redistribute it
  * and/or modify it under the terms of the GNU General Public
- * License (version 3) as published by the FSF - Free Software 
+ * License (version 2) as published by the FSF - Free Software
  * Foundation
  */
 
 #include "shared.h"
 #include "monitord.h"
-#include "os_zlib/os_zlib.h"
 
+#ifdef ZLIB_SYSTEM
+#include <zlib.h>
+#else
+#include "../external/zlib-1.2.11/zlib.h"
+#endif
 
-/* gzips a log file */
-void OS_CompressLog(char *logfile)
+/* gzip a log file */
+void OS_CompressLog(const char *logfile)
 {
     FILE *log;
-    gzFile *zlog;
-    
+    gzFile zlog;
+
     char logfileGZ[OS_FLSIZE + 1];
     int len, err;
-    
+
     char buf[OS_MAXSTR + 1];
-    
 
     /* Do not compress */
-    if(mond.compress == 0)
+    if (mond.compress == 0) {
         return;
-        
-        
-    /* Clearing the memory */
-    memset(logfileGZ,'\0',OS_FLSIZE +1);
-    memset(buf, '\0', OS_MAXSTR + 1);
+    }
 
+    /* Clear memory */
+    memset(logfileGZ, '\0', OS_FLSIZE + 1);
+    memset(buf, '\0', OS_MAXSTR + 1);
 
-    /* Setting the umask */
+    /* Set umask */
     umask(0027);
 
-               
-    /* Creating the gzip file name */
+    /* Create the gzip file name */
     snprintf(logfileGZ, OS_FLSIZE, "%s.gz", logfile);
 
-
-    /* Reading log file */
+    /* Read log file */
     log = fopen(logfile, "r");
-    if(!log)
-    {
-        /* Do not warn in here, since the alert file may not exist. */
+    if (!log) {
+        /* Do not warn in here, since the alert file may not exist */
         return;
     }
-    
-    /* Opening compressed file */
+
+    /* Open compressed file */
     zlog = gzopen(logfileGZ, "w");
-    if(!zlog)
-    {
+    if (!zlog) {
         fclose(log);
-        merror(FOPEN_ERROR, ARGV0, logfileGZ);
+        merror(FOPEN_ERROR, ARGV0, logfileGZ, errno, strerror(errno));
         return;
     }
-    
-    for(;;)
-    {
-        len = fread(buf, 1, OS_MAXSTR, log);
-        if(len <= 0)
+
+    for (;;) {
+        len = (int) fread(buf, 1, OS_MAXSTR, log);
+        if (len <= 0) {
             break;
-        if(gzwrite(zlog, buf, (unsigned)len) != len)
+        }
+        if (gzwrite(zlog, buf, (unsigned)len) != len) {
             merror("%s: Compression error: %s", ARGV0, gzerror(zlog, &err));
+        }
     }
 
-    /* Closing */
     fclose(log);
     gzclose(zlog);
 
-    /* Removing uncompressed file */
+    /* Remove uncompressed file */
     unlink(logfile);
 
     return;
 }
-         
 
-/* EOF */