diff options
Diffstat (limited to 'antivirus/clamav/clamdmail-patches')
-rw-r--r-- | antivirus/clamav/clamdmail-patches | 251 |
1 files changed, 251 insertions, 0 deletions
diff --git a/antivirus/clamav/clamdmail-patches b/antivirus/clamav/clamdmail-patches new file mode 100644 index 0000000000..7d53b3131b --- /dev/null +++ b/antivirus/clamav/clamdmail-patches @@ -0,0 +1,251 @@ +diff -uNr clamdmail-0.15a.orig/clamdmail.c clamdmail-0.15a/clamdmail.c +--- clamdmail-0.15a.orig/clamdmail.c 2004-03-24 16:24:32.000000000 +0100 ++++ clamdmail-0.15a/clamdmail.c 2004-06-05 14:08:19.425200872 +0200 +@@ -33,6 +33,9 @@ + #include <sys/stat.h> + #include <fcntl.h> + #include <clamav.h> ++#if !defined(C_CYGWIN) && !defined(C_BEOS) ++#include <pwd.h> ++#endif + + + #include "options.h" +@@ -40,6 +43,7 @@ + #include "shared.h" + #include "defaults.h" + #include "ripmime-api.h" ++#include "output.h" + + #define CLAMDMAIL_VER "0.15" + +@@ -49,6 +53,9 @@ + void printtag(void); + int quarantine(int fd, char *quarname, long timestamp, char **virname, char *From, char *FromR, char *To, char *out, struct optstruct *opt); + ++struct s_info claminfo; ++short printinfected = 0; ++ + /* this local macro takes care about freeing memory at exit */ + /* + #define mexit(i) if(opt) free_opt(opt); \ +@@ -167,11 +174,6 @@ + tmpdir = "/tmp"; + #endif + +- +- if(writeaccess(tmpdir, UNPUSER) != 1) { +- mprintf("@Can't write to the temporary directory.\n"); +- mexit(64); +- } + /* generate the temporary directory */ + + dir = cl_gentemp(tmpdir); +@@ -185,11 +187,6 @@ + + + tmper = tempnam(tmpfil, pfx); +- /*if((tmp = tmpfile()) == NULL) { +- cli_dbgmsg("Can't generate tmpfile().\n"); +- return CL_ETMPFILE; +- } +- */ + + fd = open(tmper,O_RDWR|O_CREAT, S_IRWXU); + +@@ -230,7 +227,9 @@ + + free(dir); + ++#ifdef USE_SPAMC + if(ret == CL_CLEAN && optl(opt, "spam")) isspam = spamc(fd,rcptto,maxsize); ++#endif + + ret = spoolstdin(fd, ret, &virname, &bndrystore, opt); + +@@ -466,7 +465,9 @@ + mprintf(" \n"); + mprintf(" --help -h Show help\n"); + mprintf(" --version -V Print version number and exit\n"); ++#ifdef USE_SPAMC + mprintf(" --spam Pass message to spamc/spamd first.\n"); ++#endif + mprintf(" --tag Tag messages as scanned.\n"); + mprintf(" --admin=you@you.com The from address you want clamdmail to use when informing recipients\n"); + mprintf(" they have been sent an infected message. Basically, your postmaster account.\n"); +diff -uNr clamdmail-0.15a.orig/client.c clamdmail-0.15a/client.c +--- clamdmail-0.15a.orig/client.c 2003-11-22 19:41:23.000000000 +0100 ++++ clamdmail-0.15a/client.c 2004-06-05 13:34:39.870219896 +0200 +@@ -35,9 +35,11 @@ + #include <dirent.h> + + #include "others.h" +-#include "cfgfile.h" + #include "defaults.h" + #include "shared.h" ++#include "cfgparser.h" ++#include "memory.h" ++#include "output.h" + + int client(const char *dirname, struct optstruct *opt, char **virname) + { +diff -uNr clamdmail-0.15a.orig/Makefile.am clamdmail-0.15a/Makefile.am +--- clamdmail-0.15a.orig/Makefile.am 2003-11-22 22:29:47.000000000 +0100 ++++ clamdmail-0.15a/Makefile.am 2004-06-05 13:34:39.870219896 +0200 +@@ -20,6 +20,12 @@ + bin_PROGRAMS = clamdmail + + clamdmail_SOURCES = \ ++ ../shared/output.c \ ++ ../shared/output.h \ ++ ../shared/cfgparser.c \ ++ ../shared/cfgparser.h \ ++ ../shared/memory.c \ ++ ../shared/memory.h \ + options.c \ + options.h \ + clamdmail.c \ +@@ -28,9 +34,9 @@ + treewalk.c \ + defaults.h + +-clamdmail_LDADD = ../clamscan/getopt.o ../clamscan/others.o ../clamd/cfgfile.o ++clamdmail_LDADD = ../clamscan/getopt.o ../clamscan/others.o + + endif + +-INCLUDES = -I../clamscan -I../clamd -I../libclamav ++INCLUDES = -I../clamscan -I../clamd -I../libclamav -I../shared + LIBS = -L../libclamav -lclamav @FRESHCLAM_LIBS@ +diff -uNr clamdmail-0.15a.orig/Makefile.in clamdmail-0.15a/Makefile.in +--- clamdmail-0.15a.orig/Makefile.in 2004-03-24 15:58:14.000000000 +0100 ++++ clamdmail-0.15a/Makefile.in 2004-06-05 13:34:39.872219592 +0200 +@@ -119,19 +119,26 @@ + @USE_PTHREAD_TRUE@bin_PROGRAMS = clamdmail + + @USE_PTHREAD_TRUE@clamdmail_SOURCES = \ ++@USE_PTHREAD_TRUE@ ../shared/output.c \ ++@USE_PTHREAD_TRUE@ ../shared/output.h \ ++@USE_PTHREAD_TRUE@ ../shared/cfgparser.c \ ++@USE_PTHREAD_TRUE@ ../shared/cfgparser.h \ ++@USE_PTHREAD_TRUE@ ../shared/memory.c \ ++@USE_PTHREAD_TRUE@ ../shared/memory.h \ + @USE_PTHREAD_TRUE@ options.c \ + @USE_PTHREAD_TRUE@ options.h \ + @USE_PTHREAD_TRUE@ clamdmail.c \ + @USE_PTHREAD_TRUE@ client.c \ + @USE_PTHREAD_TRUE@ treewalk.c \ +-@USE_PTHREAD_TRUE@ spamcc.c \ +-@USE_PTHREAD_TRUE@ defaults.h ++@USE_PTHREAD_TRUE@ defaults.h \ ++#@USE_PTHREAD_TRUE@ spamcc.c + + +-@USE_PTHREAD_TRUE@clamdmail_LDADD = ../clamscan/getopt.o ../clamscan/others.o ../clamd/cfgfile.o ++@USE_PTHREAD_TRUE@clamdmail_LDADD = ../clamscan/getopt.o ../clamscan/others.o + +-INCLUDES = -I../clamscan -I../clamd -I../libclamav +-LIBS = -L../libclamav -lclamav -lripmime -lspamc @FRESHCLAM_LIBS@ ++INCLUDES = -I../clamscan -I../clamd -I../libclamav -I../shared ++#LIBS = -L../libclamav -lclamav -lripmime -lspamc @FRESHCLAM_LIBS@ ++LIBS = -L../libclamav -lclamav -lripmime @FRESHCLAM_LIBS@ + subdir = . + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 + mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +@@ -141,11 +148,13 @@ + PROGRAMS = $(bin_PROGRAMS) + + @USE_PTHREAD_TRUE@am_clamdmail_OBJECTS = options.$(OBJEXT) \ ++@USE_PTHREAD_TRUE@ cfgparser.$(OBJEXT) memory.$(OBJEXT) \ ++@USE_PTHREAD_TRUE@ output.$(OBJEXT) \ + @USE_PTHREAD_TRUE@ clamdmail.$(OBJEXT) client.$(OBJEXT) \ +-@USE_PTHREAD_TRUE@ treewalk.$(OBJEXT) spamcc.$(OBJEXT) ++@USE_PTHREAD_TRUE@ treewalk.$(OBJEXT) # spamcc.$(OBJEXT) + clamdmail_OBJECTS = $(am_clamdmail_OBJECTS) + @USE_PTHREAD_TRUE@clamdmail_DEPENDENCIES = ../clamscan/getopt.o \ +-@USE_PTHREAD_TRUE@ ../clamscan/others.o ../clamd/cfgfile.o ++@USE_PTHREAD_TRUE@ ../clamscan/others.o + @USE_PTHREAD_FALSE@clamdmail_DEPENDENCIES = + clamdmail_LDFLAGS = + +@@ -157,6 +166,8 @@ + am__depfiles_maybe = depfiles + @AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/clamdmail.Po ./$(DEPDIR)/client.Po \ + @AMDEP_TRUE@ ./$(DEPDIR)/options.Po \ ++@AMDEP_TRUE@ ./$(DEPDIR)/cfgparser.Po ./$(DEPDIR)/output.Po \ ++@AMDEP_TRUE@ ./$(DEPDIR)/memory.Po \ + @AMDEP_TRUE@ ./$(DEPDIR)/treewalk.Po + COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +@@ -222,6 +233,9 @@ + echo " rm -f $$p $$f"; \ + rm -f $$p $$f ; \ + done ++output.$(OBJEXT): ../shared/output.c ++cfgparser.$(OBJEXT): ../shared/cfgparser.c ++memory.$(OBJEXT): ../shared/memory.c + clamdmail$(EXEEXT): $(clamdmail_OBJECTS) $(clamdmail_DEPENDENCIES) + @rm -f clamdmail$(EXEEXT) + $(LINK) $(clamdmail_LDFLAGS) $(clamdmail_OBJECTS) $(clamdmail_LDADD) $(LIBS) +@@ -259,6 +273,61 @@ + $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$< + CCDEPMODE = @CCDEPMODE@ + ++output.o: ../shared/output.c ++@AMDEP_TRUE@ source='../shared/output.c' object='output.o' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/output.Po' tmpdepfile='$(DEPDIR)/output.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o output.o `test -f '../shared/output.c' || echo '$(srcdir)/'`../shared/output.c ++ ++output.obj: ../shared/output.c ++@AMDEP_TRUE@ source='../shared/output.c' object='output.obj' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/output.Po' tmpdepfile='$(DEPDIR)/output.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o output.obj `cygpath -w ../shared/output.c` ++ ++output.lo: ../shared/output.c ++@AMDEP_TRUE@ source='../shared/output.c' object='output.lo' libtool=yes @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/output.Plo' tmpdepfile='$(DEPDIR)/output.TPlo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o output.lo `test -f '../shared/output.c' || echo '$(srcdir)/'`../shared/output.c ++ ++cfgparser.o: ../shared/cfgparser.c ++@AMDEP_TRUE@ source='../shared/cfgparser.c' object='cfgparser.o' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/cfgparser.Po' tmpdepfile='$(DEPDIR)/cfgparser.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cfgparser.o `test -f '../shared/cfgparser.c' || echo '$(srcdir)/'`../shared/cfgparser.c ++ ++cfgparser.obj: ../shared/cfgparser.c ++@AMDEP_TRUE@ source='../shared/cfgparser.c' object='cfgparser.obj' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/cfgparser.Po' tmpdepfile='$(DEPDIR)/cfgparser.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cfgparser.obj `cygpath -w ../shared/cfgparser.c` ++ ++cfgparser.lo: ../shared/cfgparser.c ++@AMDEP_TRUE@ source='../shared/cfgparser.c' object='cfgparser.lo' libtool=yes @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/cfgparser.Plo' tmpdepfile='$(DEPDIR)/cfgparser.TPlo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o cfgparser.lo `test -f '../shared/cfgparser.c' || echo '$(srcdir)/'`../shared/cfgparser.c ++ ++memory.o: ../shared/memory.c ++@AMDEP_TRUE@ source='../shared/memory.c' object='memory.o' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/memory.Po' tmpdepfile='$(DEPDIR)/memory.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o memory.o `test -f '../shared/memory.c' || echo '$(srcdir)/'`../shared/memory.c ++ ++memory.obj: ../shared/memory.c ++@AMDEP_TRUE@ source='../shared/memory.c' object='memory.obj' libtool=no @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/memory.Po' tmpdepfile='$(DEPDIR)/memory.TPo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o memory.obj `cygpath -w ../shared/memory.c` ++ ++memory.lo: ../shared/memory.c ++@AMDEP_TRUE@ source='../shared/memory.c' object='memory.lo' libtool=yes @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ depfile='$(DEPDIR)/memory.Plo' tmpdepfile='$(DEPDIR)/memory.TPlo' @AMDEPBACKSLASH@ ++@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ++ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o memory.lo `test -f '../shared/memory.c' || echo '$(srcdir)/'`../shared/memory.c ++CCDEPMODE = @CCDEPMODE@ ++ + mostlyclean-libtool: + -rm -f *.lo + |