[exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog exim…

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: exim-cvs
Subject: [exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog exim/exim-src ACKNOWLEDGMENTS exim/exim-src/src malware.c
ph10 2006/07/06 15:19:51 BST

  Modified files:
    exim-doc/doc-txt     ChangeLog 
    exim-src             ACKNOWLEDGMENTS 
    exim-src/src         malware.c 
  Log:
  Applied patch from Arkadiusz Miskiewicz to apply a timeout to read
  operations in malware.c.


  Revision  Changes    Path
  1.368     +3 -0      exim/exim-doc/doc-txt/ChangeLog
  1.51      +2 -1      exim/exim-src/ACKNOWLEDGMENTS
  1.15      +9 -5      exim/exim-src/src/malware.c


  Index: ChangeLog
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
  retrieving revision 1.367
  retrieving revision 1.368
  diff -u -r1.367 -r1.368
  --- ChangeLog    3 Jul 2006 15:39:06 -0000    1.367
  +++ ChangeLog    6 Jul 2006 14:19:50 -0000    1.368
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.367 2006/07/03 15:39:06 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.368 2006/07/06 14:19:50 ph10 Exp $


   Change log file for Exim from version 4.21
   -------------------------------------------
  @@ -71,6 +71,9 @@
         systems where poll() doesn't work, in particular OS X.


   PH/10 Added more information to debugging output for retry time not reached.
  +
  +PH/11 Applied patch from Arkadiusz Miskiewicz to apply a timeout to read
  +      operations in malware.c.



Exim version 4.62

  Index: ACKNOWLEDGMENTS
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/ACKNOWLEDGMENTS,v
  retrieving revision 1.50
  retrieving revision 1.51
  diff -u -r1.50 -r1.51
  --- ACKNOWLEDGMENTS    3 Jul 2006 15:19:44 -0000    1.50
  +++ ACKNOWLEDGMENTS    6 Jul 2006 14:19:50 -0000    1.51
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.50 2006/07/03 15:19:44 ph10 Exp $
  +$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.51 2006/07/06 14:19:50 ph10 Exp $


EXIM ACKNOWLEDGEMENTS

@@ -20,7 +20,7 @@
Philip Hazel

Lists created: 20 November 2002
-Last updated: 03 July 2006
+Last updated: 06 July 2006


   THE OLD LIST
  @@ -201,6 +201,7 @@
   Alex Miller               Suggested readline() patch
                             Patch for LDAP_RES_SEARCH_REFERENCE handling
                             Support for the DrWeb content scanner
  +Arkadiusz Miskiewicz      Patch to add timeout to reads in malware.c
   Andreas Mueller           Patch for logging uncompleted SMTP transactions
   Pete Naylor               Patch for LDAP TCP connect timeout setting
   Alexander Newmann         Diagnosing and patching obscure and subtle socket bug


  Index: malware.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/malware.c,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- malware.c    22 Feb 2006 14:46:44 -0000    1.14
  +++ malware.c    6 Jul 2006 14:19:50 -0000    1.15
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/malware.c,v 1.14 2006/02/22 14:46:44 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/malware.c,v 1.15 2006/07/06 14:19:50 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -20,6 +20,10 @@
   #define SHUT_WR 1
   #endif


  +
  +#define        MALWARE_TIMEOUT             120
  +
  +
   #define DRWEBD_SCAN_CMD             (1)     /* scan file, buffer or diskfile */
   #define DRWEBD_RETURN_VIRUSES       (1<<0)   /* ask daemon return to us viruses names from report */
   #define DRWEBD_IS_MAIL              (1<<19)  /* say to daemon that format is "archive MAIL" */
  @@ -557,7 +561,7 @@
             return DEFER;
           };


  -        bread = read(sock, av_buffer, sizeof(av_buffer));
  +        bread = ip_recv(sock, av_buffer, sizeof(av_buffer), MALWARE_TIMEOUT);
           if (bread >0) av_buffer[bread]='\0';
           if (bread < 0) {
             (void)close(sock);
  @@ -591,7 +595,7 @@
           i = 0;
           memset(av_buffer, 0, sizeof(av_buffer));
           do {
  -          bread=read(sock, &av_buffer[i], 1);
  +          bread=ip_recv(sock, &av_buffer[i], 1, MALWARE_TIMEOUT);
             if (bread < 0) {
               (void)close(sock);
               log_write(0, LOG_MAIN|LOG_PANIC,
  @@ -976,7 +980,7 @@


         /* wait for result */
         memset(av_buffer, 0, sizeof(av_buffer));
  -      if ((!(bread = read(sock, av_buffer, sizeof(av_buffer))) > 0)) {
  +      if ((!(bread = ip_recv(sock, av_buffer, sizeof(av_buffer), MALWARE_TIMEOUT)) > 0)) {
           (void)close(sock);
           log_write(0, LOG_MAIN|LOG_PANIC,
                "malware acl condition: unable to read from sophie UNIX socket (%s)", sophie_options);
  @@ -1098,7 +1102,7 @@
               return DEFER;
             }
             memset(av_buffer2, 0, sizeof(av_buffer2));
  -          bread = read(sock, av_buffer2, sizeof(av_buffer2));
  +          bread = ip_recv(sock, av_buffer2, sizeof(av_buffer2), MALWARE_TIMEOUT);


             if (bread < 0) {
               log_write(0, LOG_MAIN|LOG_PANIC,
  @@ -1238,7 +1242,7 @@


         /* Read the result */
         memset(av_buffer, 0, sizeof(av_buffer));
  -      bread = read(sock, av_buffer, sizeof(av_buffer));
  +      bread = ip_recv(sock, av_buffer, sizeof(av_buffer), MALWARE_TIMEOUT);
         (void)close(sock);


         if (!(bread  > 0)) {