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

Página Principal
Apagar esta mensagem
Responder a esta mensagem
Autor: Philip Hazel
Data:  
Para: exim-cvs
Assunto: [exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog exim/exim-src ACKNOWLEDGMENTS exim/exim-src/src expand.c globals.c globals.h mime.c readconf.c sieve.c
ph10 2005/11/15 10:08:25 GMT

  Modified files:
    exim-doc/doc-txt     ChangeLog 
    exim-src             ACKNOWLEDGMENTS 
    exim-src/src         expand.c globals.c globals.h mime.c 
                         readconf.c sieve.c 
  Log:
  Add check_rfc2047_length to disable length checking for encoded words.


  Revision  Changes    Path
  1.262     +4 -0      exim/exim-doc/doc-txt/ChangeLog
  1.38      +2 -1      exim/exim-src/ACKNOWLEDGMENTS
  1.47      +2 -1      exim/exim-src/src/expand.c
  1.42      +1 -0      exim/exim-src/src/globals.c
  1.30      +1 -0      exim/exim-src/src/globals.h
  1.13      +1 -1      exim/exim-src/src/mime.c
  1.15      +1 -0      exim/exim-src/src/readconf.c
  1.15      +1 -1      exim/exim-src/src/sieve.c


  Index: ChangeLog
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
  retrieving revision 1.261
  retrieving revision 1.262
  diff -u -r1.261 -r1.262
  --- ChangeLog    15 Nov 2005 09:44:33 -0000    1.261
  +++ ChangeLog    15 Nov 2005 10:08:24 -0000    1.262
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.261 2005/11/15 09:44:33 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.262 2005/11/15 10:08:24 ph10 Exp $


   Change log file for Exim from version 4.21
   -------------------------------------------
  @@ -125,6 +125,10 @@
   PH/13 After a successful wildlsearch lookup, discard the values of numeric
         variables because (a) they are in the wrong storage pool and (b) even if
         they were copied, it wouldn't work properly because of the caching.
  +
  +PH/14 Add check_rfc2047_length to disable enforcement of RFC 2047 length
  +      checking when decoding. Apparently there are clients that generate
  +      overlong encoded strings. Why am I not surprised?



Exim version 4.54

  Index: ACKNOWLEDGMENTS
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/ACKNOWLEDGMENTS,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- ACKNOWLEDGMENTS    2 Nov 2005 16:32:58 -0000    1.37
  +++ ACKNOWLEDGMENTS    15 Nov 2005 10:08:25 -0000    1.38
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.37 2005/11/02 16:32:58 ph10 Exp $
  +$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.38 2005/11/15 10:08:25 ph10 Exp $


EXIM ACKNOWLEDGEMENTS

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

Lists created: 20 November 2002
-Last updated: 02 November 2005
+Last updated: 15 November 2005


   THE OLD LIST
  @@ -185,6 +185,7 @@
                             Suggested patch for SRV/MX lookup retry option
   Nikos Mavrogiannopoulos   GnuTLS proof of concept code
                             Update to RSA and D-H parameter caching code
  +Komar Maxim               Patch for check_rfc2047_length
   Andy Mell                 Fix for rejectlog regeneration bug
   Marc Merlin               Many suggestions and patches for callouts and
                               SMTP error message features


  Index: expand.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/expand.c,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- expand.c    12 Oct 2005 11:20:41 -0000    1.46
  +++ expand.c    15 Nov 2005 10:08:25 -0000    1.47
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/expand.c,v 1.46 2005/10/12 11:20:41 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/expand.c,v 1.47 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -1205,7 +1205,8 @@
     uschar *decoded, *error;
     while (ptr > yield && isspace(ptr[-1])) ptr--;
     *ptr = 0;
  -  decoded = rfc2047_decode2(yield, TRUE, charset, '?', NULL, newsize, &error);
  +  decoded = rfc2047_decode2(yield, check_rfc2047_length, charset, '?', NULL,
  +    newsize, &error);
     if (error != NULL)
       {
       DEBUG(D_any) debug_printf("*** error in RFC 2047 decoding: %s\n"


  Index: globals.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/globals.c,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- globals.c    14 Nov 2005 16:09:54 -0000    1.41
  +++ globals.c    15 Nov 2005 10:08:25 -0000    1.42
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/globals.c,v 1.41 2005/11/14 16:09:54 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/globals.c,v 1.42 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -372,6 +372,7 @@
   uschar *check_dns_names_pattern= US"(?i)^(?>(?(1)\\.|())[^\\W_](?>[a-z0-9-]*[^\\W_])?)+$";
   int     check_log_inodes       = 0;
   int     check_log_space        = 0;
  +BOOL    check_rfc2047_length   = TRUE;
   int     check_spool_inodes     = 0;
   int     check_spool_space      = 0;
   int     clmacro_count          = 0;


  Index: globals.h
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/globals.h,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- globals.h    13 Sep 2005 11:13:27 -0000    1.29
  +++ globals.h    15 Nov 2005 10:08:25 -0000    1.30
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/globals.h,v 1.29 2005/09/13 11:13:27 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/globals.h,v 1.30 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -195,6 +195,7 @@
   extern uschar *check_dns_names_pattern;/* Regex for syntax check */
   extern int     check_log_inodes;       /* Minimum for message acceptance */
   extern int     check_log_space;        /* Minimum for message acceptance */
  +extern BOOL    check_rfc2047_length;   /* Check RFC 2047 encoded string length */
   extern int     check_spool_inodes;     /* Minimum for message acceptance */
   extern int     check_spool_space;      /* Minimum for message acceptance */
   extern int     clmacro_count;          /* Number of command line macros */


  Index: mime.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/mime.c,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- mime.c    16 Aug 2005 12:32:32 -0000    1.12
  +++ mime.c    15 Nov 2005 10:08:25 -0000    1.13
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/mime.c,v 1.12 2005/08/16 12:32:32 tom Exp $ */
  +/* $Cambridge: exim/exim-src/src/mime.c,v 1.13 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -619,7 +619,7 @@
                   memset(param_value,0,param_value_len+1);
                   q = p + mime_parameter_list[j].namelen;
                   Ustrncpy(param_value, q, param_value_len);
  -                param_value = rfc2047_decode(param_value, TRUE, NULL, 32, &param_value_len, &q);
  +                param_value = rfc2047_decode(param_value, check_rfc2047_length, NULL, 32, &param_value_len, &q);
                   debug_printf("Found %s MIME parameter in %s header, value is '%s'\n", mime_parameter_list[j].name, mime_header_list[i].name, param_value);
                   *((uschar **)(mime_parameter_list[j].value)) = param_value;
                   p += (mime_parameter_list[j].namelen + param_value_len + 1);


  Index: readconf.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/readconf.c,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- readconf.c    19 Sep 2005 14:01:51 -0000    1.14
  +++ readconf.c    15 Nov 2005 10:08:25 -0000    1.15
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/readconf.c,v 1.14 2005/09/19 14:01:51 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/readconf.c,v 1.15 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -182,6 +182,7 @@
     { "callout_random_local_part",opt_stringptr,   &callout_random_local_part },
     { "check_log_inodes",         opt_int,         &check_log_inodes },
     { "check_log_space",          opt_Kint,        &check_log_space },
  +  { "check_rfc2047_length",     opt_bool,        &check_rfc2047_length },
     { "check_spool_inodes",       opt_int,         &check_spool_inodes },
     { "check_spool_space",        opt_Kint,        &check_spool_space },
     { "daemon_smtp_port",         opt_stringptr|opt_hidden, &daemon_smtp_port },


  Index: sieve.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/sieve.c,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- sieve.c    14 Nov 2005 11:41:23 -0000    1.14
  +++ sieve.c    15 Nov 2005 10:08:25 -0000    1.15
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/sieve.c,v 1.14 2005/11/14 11:41:23 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/sieve.c,v 1.15 2005/11/15 10:08:25 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -800,7 +800,7 @@
       *t++=*r++;
     }
   *t++='\0';
  -value->character=rfc2047_decode(s,TRUE,US"utf-8",'\0',&value->length,&errmsg);
  +value->character=rfc2047_decode(s,check_rfc2047_length,US"utf-8",'\0',&value->length,&errmsg);
   }