I have a patch for using clamav-95 with multi log if anyone is intrested. I didn't write the orginal patch I found it on shupp.org but they stopped adding release at 0.91.
patched clean and no issues with compile or running on Fedora 9/8/7/5/3 Patch paste below: diff -cr clamav-0.95/clamd/clamd.c clamav-0.95-patched/clamd/clamd.c *** clamav-0.95/clamd/clamd.c 2009-03-16 14:37:26.000000000 -0400 --- clamav-0.95-patched/clamd/clamd.c 2009-04-08 10:37:34.000000000 -0400 *************** *** 217,226 **** char timestr[32]; logg_file = opt->strarg; if(strlen(logg_file) < 2 || (logg_file[0] != '/' && logg_file[0] != '\\' && logg_file[1] != ':')) { ! fprintf(stderr, "ERROR: LogFile requires full path.\n"); ret = 1; break; ! } time(&currtime); if(logg("#+++ Started at %s", cli_ctime(&currtime, timestr, sizeof(timestr)))) { fprintf(stderr, "ERROR: Can't initialize the internal logger\n"); --- 217,230 ---- char timestr[32]; logg_file = opt->strarg; if(strlen(logg_file) < 2 || (logg_file[0] != '/' && logg_file[0] != '\\' && logg_file[1] != ':')) { ! if (strcmp(logg_file,"stderr")!=0) { ! fprintf(stderr, "ERROR: LogFile requires full path.\n"); ret = 1; break; ! }else { ! use_stderr=1; ! } ! } time(&currtime); if(logg("#+++ Started at %s", cli_ctime(&currtime, timestr, sizeof(timestr)))) { fprintf(stderr, "ERROR: Can't initialize the internal logger\n"); diff -cr clamav-0.95/etc/clamd.conf clamav-0.95-patched/etc/clamd.conf *** clamav-0.95/etc/clamd.conf 2009-03-16 14:37:27.000000000 -0400 --- clamav-0.95-patched/etc/clamd.conf 2009-04-08 10:38:59.000000000 -0400 *************** *** 5,17 **** # Comment or remove the line below. ! Example # Uncomment this option to enable logging. # LogFile must be writable for the user running daemon. # A full path is required. # Default: disabled ! #LogFile /tmp/clamd.log # By default the log file is locked for writing - the lock protects against # running clamd multiple times (if want to run another clamd, please --- 5,17 ---- # Comment or remove the line below. ! #Example # Uncomment this option to enable logging. # LogFile must be writable for the user running daemon. # A full path is required. # Default: disabled ! # /tmp/clamd.log # By default the log file is locked for writing - the lock protects against # running clamd multiple times (if want to run another clamd, please *************** *** 36,42 **** # Also log clean files. Useful in debugging but drastically increases the # log size. # Default: no ! #LogClean yes # Use system logger (can work together with LogFile). # Default: no --- 36,42 ---- # Also log clean files. Useful in debugging but drastically increases the # log size. # Default: no ! LogClean yes # Use system logger (can work together with LogFile). # Default: no *************** *** 49,55 **** # Enable verbose logging. # Default: no ! #LogVerbose yes # This option allows you to save a process identifier of the listening # daemon (main thread). --- 49,55 ---- # Enable verbose logging. # Default: no ! LogVerbose yes # This option allows you to save a process identifier of the listening # daemon (main thread). *************** *** 158,164 **** # Don't fork into background. # Default: no ! #Foreground yes # Enable debug messages in libclamav. # Default: no --- 158,164 ---- # Don't fork into background. # Default: no ! Foreground yes # Enable debug messages in libclamav. # Default: no *************** *** 236,242 **** # Enable internal e-mail scanner. # Default: yes ! #ScanMail yes # If an email contains URLs ClamAV can download and scan them. # WARNING: This option may open your system to a DoS attack. --- 236,242 ---- # Enable internal e-mail scanner. # Default: yes ! ScanMail yes # If an email contains URLs ClamAV can download and scan them. # WARNING: This option may open your system to a DoS attack. diff -cr clamav-0.95/etc/freshclam.conf clamav-0.95-patched/etc/freshclam.conf *** clamav-0.95/etc/freshclam.conf 2009-03-16 14:43:35.000000000 -0400 --- clamav-0.95-patched/etc/freshclam.conf 2009-04-08 10:38:59.000000000 -0400 *************** *** 5,11 **** # Comment or remove the line below. ! Example # Path to the database directory. # WARNING: It must match clamd.conf's directive! --- 5,11 ---- # Comment or remove the line below. ! #Example # Path to the database directory. # WARNING: It must match clamd.conf's directive! *************** *** 14,20 **** # Path to the log file (make sure it has proper permissions) # Default: disabled ! #UpdateLogFile /var/log/freshclam.log # Maximum size of the log file. # Value of 0 disables the limit. --- 14,20 ---- # Path to the log file (make sure it has proper permissions) # Default: disabled ! UpdateLogFile /var/log/freshclam.log # Maximum size of the log file. # Value of 0 disables the limit. diff -cr clamav-0.95/shared/output.c clamav-0.95-patched/shared/output.c *** clamav-0.95/shared/output.c 2009-03-16 14:37:26.000000000 -0400 --- clamav-0.95-patched/shared/output.c 2009-04-08 10:35:18.000000000 -0400 *************** *** 191,197 **** return ret < 0 ? -1 : bytes; } ! void logg_close(void) { #if defined(USE_SYSLOG) && !defined(C_AIX) --- 191,197 ---- return ret < 0 ? -1 : bytes; } ! int use_stderr; void logg_close(void) { #if defined(USE_SYSLOG) && !defined(C_AIX) *************** *** 249,256 **** pthread_mutex_lock(&logg_mutex); #endif if(logg_file) { ! if(!logg_fp) { ! old_umask = umask(0037); if((logg_fp = fopen(logg_file, "at")) == NULL) { umask(old_umask); #ifdef CL_THREAD_SAFE --- 249,258 ---- pthread_mutex_lock(&logg_mutex); #endif if(logg_file) { ! if(use_stderr) { ! logg_fp = stderr; ! } else if(!logg_fp) { ! old_umask = umask(0037); if((logg_fp = fopen(logg_file, "at")) == NULL) { umask(old_umask); #ifdef CL_THREAD_SAFE *************** *** 279,285 **** #endif } ! if(logg_size) { if(stat(logg_file, &sb) != -1) { if((unsigned int) sb.st_size > logg_size) { logg_file = NULL; --- 281,287 ---- #endif } ! if(logg_size && !use_stderr) { if(stat(logg_file, &sb) != -1) { if((unsigned int) sb.st_size > logg_size) { logg_file = NULL; diff -cr clamav-0.95/shared/output.h clamav-0.95-patched/shared/output.h *** clamav-0.95/shared/output.h 2009-03-16 14:37:26.000000000 -0400 --- clamav-0.95-patched/shared/output.h 2009-04-08 10:38:59.000000000 -0400 *************** *** 27,32 **** --- 27,33 ---- #include <stdlib.h> + int use_stderr; #ifdef __GNUC__ int mdprintf(int desc, const char *str, ...) __attribute__((format(printf, 2,3))); #else END patch ---------- Jason ..·><((((º> _______________________________________________ Help us build a comprehensive ClamAV guide: visit http://wiki.clamav.net http://www.clamav.net/support/ml