I guess it's about time I contributed something :-) The problem with the patch seems to be that they have renamed the FILE handle for the log file from logg_fd to logg_fs. I have "patched the patch", and it seems to work.
Mailing this patch in plain text may wrap some of the lines (line 7 almost
certainly), so I have included it as an attachment as well - I hope
attachments get through the mailing list OK?
Nikki
-------------------- clamav-0.88.1-stderr.patch --------------------
diff -urN ../clamav-0.81-orig/clamd/clamd.c ./clamd/clamd.c
--- ../clamav-0.81-orig/clamd/clamd.c Tue Jan 18 17:42:35 2005
+++ ./clamd/clamd.c Tue Feb 1 16:23:45 2005
@@ -137,8 +137,13 @@
if((cpt = cfgopt(copt, "LogFile"))) {
logg_file = cpt->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");
exit(1);
+ }
+ else {
+ use_stderr=1;
+ }
}
time(&currtime);
if(logg("+++ Started at %s", ctime(&currtime))) {
diff -urN ../clamav-0.81-orig/shared/output.c ./shared/output.c
--- ../clamav-0.81-orig/shared/output.c Wed Jan 26 03:06:20 2005
+++ ./shared/output.c Tue Feb 1 16:23:45 2005
@@ -115,7 +115,9 @@
#ifdef CL_THREAD_SAFE
pthread_mutex_lock(&logg_mutex);
#endif
- if(!logg_fs) {
+ if(use_stderr) {
+ logg_fs = stderr;
+ } else if(!logg_fs) {
old_umask = umask(0037);
if((logg_fs = fopen(logg_file, "a")) == NULL) {
umask(old_umask);
@@ -150,7 +152,7 @@
free(timestr);
}
- if(logg_size) {
+ if(logg_size && !use_stderr) {
if(stat(logg_file, &sb) != -1) {
if(sb.st_size > logg_size) {
logg_file = NULL;
diff -urN ../clamav-0.81-orig/shared/output.h ./shared/output.h
--- ../clamav-0.81-orig/shared/output.h Mon May 10 19:14:14 2004
+++ ./shared/output.h Tue Feb 1 16:23:45 2005
@@ -28,6 +28,7 @@
int mdprintf(int desc, const char *str, ...);
+int use_stderr;
int logg(const char *str, ...);
void logg_close(void);
extern short int logg_verbose, logg_lock, logg_time;
--
Nikki Locke, Trumphurst Ltd. PC & Unix consultancy & programming
http://www.trumphurst.com/
clamav-0.88.1-stderr.patch
Description: Binary data
