Mark:

2008/2/27, Mark Martinec <[EMAIL PROTECTED]>:
> Sébastien,
>
>
>  > My gzip file has been sent personally to Mark Martinec because I had a
>  > problem with sending it to the mailing list.
>  > The log file I sent in my previous message was with disabling berkeleydb
>  > and applying patch. I hope it will able to help you.
>
>
> Thanks. It took me a while to be able to reproduce the problem - it turned
>  out that it was already partially fixed in my current 2.6.0 code, but I could
>  devise some additional obscure cases which needed to be addresses as well).
>
>  Here is a combined patch against a pristine 2.5.3 (the patch includes a
>  backport of sub parse_address, as mentioned previously in this thread).
>
>
>  --- amavisd.orig        2008-01-28 20:29:31.000000000 +0100
>  +++ amavisd     2008-02-27 21:04:16.000000000 +0100
>  @@ -3154,5 +3154,5 @@
>   sub split_address($) {
>    my($mailbox) = @_;  local($1,$2);
>  -  $mailbox =~ /^ (.*?) ( \@ (?:  \[  (?: \\. | [^\]\\] )*  (?: \] | \z)
>  +  $mailbox =~ /^ (.*?) ( \@ (?:  \[  (?: \\. | [^\]\\] ){0,999} (?: \] | \z)
>                                |  [EMAIL PROTECTED] )*
>                         ) \z/xs ? ($1, $2) : ($mailbox, '');
>  @@ -3352,7 +3352,6 @@
>    # the angle-bracket stripping is not really a duty of this subroutine,
>    # as it should have been already done elsewhere, but we allow it here 
> anyway:
>  -  local($1,$2);
>  -  $addr = $1  if $addr =~ /^ \s* < ( .* ) > \s* \z/xs;
>  -  my($source_route,$localpart,$domain) = ('','','');
>  +  $addr =~ s/^\s*<//s;  $addr =~ s/>\s*\z//s;  # tolerate unmatched angle 
> brkts
>  +  local($1,$2); my($source_route,$localpart,$domain) = ('','','');
>    # RFC 2821: so-called "source route" MUST BE accepted,
>    #           SHOULD NOT be generated, and SHOULD be ignored.
>  @@ -3362,7 +3361,7 @@
>    if (index($addr,':') >= 0 &&  # triage before more testing for source route
>        $addr =~ m{^ (       [ \t]* \@ (?: [0-9A-Za-z.!#\$%&*/^{}=_+-]* |
>  -                                         \[ (?: \\. | [^\]\\] )* \] ) [ \t]*
>  +                                   \[ (?: \\. | [^\]\\] ){0,999} \] ) [ \t]*
>                       (?: , [ \t]* \@ (?: [0-9A-Za-z.!#\$%&*/^{}=_+-]* |
>  -                                         \[ (?: \\. | [^\]\\] )* \] ) [ 
> \t]* )*
>  +                                   \[ (?: \\. | [^\]\\] ){0,999} \] ) [ 
> \t]* )*
>                       : [ \t]* ) (.*) \z }xs)
>    { # NOTE: we are quite liberal on allowing whitespace around , and : here,
>  @@ -3371,7 +3370,8 @@
>      $source_route = $1; $addr = $2;
>    }
>  -  if ($addr =~ m{^ (    (?: [^"@]+ | " (?: \\. | [^"\\] )* " | . )*? )
>  -                   ( \@ (?: [^"@\[\]\\ \t]+ | \[ (?: \\. | [^\]\\] )* \]
>  -                          | [EMAIL PROTECTED] )* )? \z}xs) {
>  +  if ($addr =~ m{^ ( .*? )
>  +                 ( \@ (?: [EMAIL PROTECTED] | \[ (?: \\. | [^\]\\] ){0,999} 
> \]
>  +                          | [EMAIL PROTECTED] )* )
>  +                 \z}xs) {
>      ($localpart,$domain) = ($1,$2);
>    } else {
>  @@ -3425,19 +3425,26 @@
>      if ($comm_lvl > 0 && /\G( \) )/gcsx) { $comm_lvl--; next }
>      if (!$in_qcontent && !$in_literal && /\G( \( )/gcsx) { $comm_lvl++; next 
> }
>  -    if ($comm_lvl > 0 && /\G( (?: \\. | [^()\\] )+ )/gcsx) { next }
>  +    if ($comm_lvl > 0 && /\G( \\.      )/gcsx) { next }
>  +    if ($comm_lvl > 0 && /\G( [^()\\]+ )/gcsx) { next }
>      # quoted content
>  -    if ($in_qcontent && /\G( " )/gcsx)
>  +    if ($in_qcontent && /\G( " )/gcsx)  # normal exit from qcontent
>        { $in_qcontent = 0; ($in_angle?$p:$s) .= $1; next }
>  +    if ($in_qcontent && /\G( > )/gcsx)  # bail out of qcontent
>  +      { $in_qcontent = 0; $in_angle = 0; $after_at = 0;
>  +        ($in_angle?$p:$s) .= $1; next }
>      if (!$comm_lvl && !$in_qcontent && !$in_literal && /\G( " )/gcsx)
>        { $in_qcontent = 1; ($in_angle?$p:$s) .= $1; next }
>  -    if ($in_qcontent && /\G( (?: \\. | [^"\\] )+ )/gcsx)
>  -      { ($in_angle?$p:$s) .= $1; next }
>  +    if ($in_qcontent && /\G( \\.      )/gcsx) { ($in_angle?$p:$s) .= $1; 
> next }
>  +    if ($in_qcontent && /\G( [^"\\>]+ )/gcsx) { ($in_angle?$p:$s) .= $1; 
> next }
>      # address literal
>      if ($in_literal && /\G( \] )/gcsx)
>        { $in_literal = 0; ($in_angle?$p:$s) .= $1; next }
>  +    if ($in_literal && /\G( > )/gcsx)  # bail out of address literal
>  +      { $in_literal = 0; $in_angle = 0; $after_at = 0;
>  +        ($in_angle?$p:$s) .= $1; next }
>      if (!$comm_lvl && !$in_qcontent && /\G( \[ )/gcsx)
>        { $in_literal = 1 if $after_at; ($in_angle?$p:$s) .= $1; next }
>  -    if ($in_literal && /\G( (?: \\. | [^\]\\] )+ )/gcsx)
>  -      { ($in_angle?$p:$s) .= $1; next }
>  +    if ($in_literal && /\G( \\.       )/gcsx) { ($in_angle?$p:$s) .= $1; 
> next }
>  +    if ($in_literal && /\G( [^\]\\>]+ )/gcsx) { ($in_angle?$p:$s) .= $1; 
> next }
>      # normal content
>      if (!$comm_lvl && !$in_qcontent && !$in_literal) {
>  @@ -3456,7 +3463,7 @@
>        if (!$in_group && /\G( ; )/gcsx)                # out of place special
>          { ($in_angle?$p:$s) .= $1; $after_at = 0; next }
>  -      if (/\G( \@ )/gcsx)   { $after_at = 1; ($in_angle?$p:$s) .= $1; next }
>  -      if (/\G( [ \t]+ )/gcsx)              { ($in_angle?$p:$s) .= $1; next }
>  -      if (/\G( [^,:;@<>()"\[\]\\]+ )/gcsx) { ($in_angle?$p:$s) .= $1; next }
>  +      if (/\G( \@ )/gcsx)    { $after_at = 1; ($in_angle?$p:$s) .= $1; next 
> }
>  +      if (/\G( [ \t]+ )/gcsx)               { ($in_angle?$p:$s) .= $1; next 
> }
>  +      if (/\G( [^,:;\@<>()"\[\]\\]+ )/gcsx) { ($in_angle?$p:$s) .= $1; next 
> }
>      }
>      if (/\G( . )/gcsx) { ($in_angle?$p:$s) .= $1; next }  # other junk
>  @@ -13765,6 +13772,6 @@
>          local($1,$2);
>          if ($args !~ /^FROM: [ \t]*
>  -                      ( < (?: " (?: \\. | [^\\"] )* " | [^"@ \t] )*
>  -                          (?: @ (?: \[ (?: \\. | [^\]\\] )* \] |
>  +                      ( < (?: " (?: \\. | [^\\"] ){0,999} " | [^"@ \t] )*
>  +                          (?: @ (?: \[ (?: \\. | [^\]\\] ){0,999} \] |
>                                      [^\[\]\\> \t] )* )? > )
>                        (?: [ \t]+ (.+) )? \z/isx ) {
>  @@ -13859,6 +13866,6 @@
>          local($1,$2);
>          if ($args !~ /^TO: [ \t]*
>  -                      ( < (?: " (?: \\. | [^\\"] )* " | [^"@ \t] )*
>  -                          (?: @ (?: \[ (?: \\. | [^\]\\] )* \] |
>  +                      ( < (?: " (?: \\. | [^\\"] ){0,999} " | [^"@ \t] )*
>  +                          (?: @ (?: \[ (?: \\. | [^\]\\] ){0,999} \] |
>                                      [^\[\]\\> \t] )* )? > )
>                        (?: [ \t]+ (.+) )? \z/isx ) {
>
>
>
>
>
>  Mark
>
>  -------------------------------------------------------------------------
>  This SF.net email is sponsored by: Microsoft
>  Defy all challenges. Microsoft(R) Visual Studio 2008.
>  http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>  _______________________________________________
>  AMaViS-user mailing list
>  AMaViS-user@lists.sourceforge.net
>  https://lists.sourceforge.net/lists/listinfo/amavis-user
>  AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
>  AMaViS-HowTos:http://www.amavis.org/howto/
>

I've tried to apply the patch to a just-downloaded
amavisd-new-2.5.3.tar.gz, and here's the result:

First, I saved you code to /usr/src/amavisd.patch

I ran

# cd /usr/src/amavisd-new-2.5.3
# patch -p1 < ../amavisd.patch

And I got:

missing header for unified diff at line 3 of patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- amavisd.orig        2008-01-28 20:29:31.000000000 +0100
|+++ amavisd     2008-02-27 21:04:16.000000000 +0100
--------------------------
File to patch: amavisd
patching file amavisd
Hunk #1 succeeded at 3154 with fuzz 2.
Hunk #2 succeeded at 3352 with fuzz 2.
Hunk #3 FAILED at 3361.
Hunk #4 succeeded at 3370 with fuzz 2.
Hunk #5 FAILED at 3425.
Hunk #6 succeeded at 3463 with fuzz 2.
Hunk #7 succeeded at 13772 with fuzz 2.
Hunk #8 succeeded at 13866 with fuzz 2.
2 out of 8 hunks FAILED -- saving rejects to file amavisd.rej


I'm no Linux genius, but I get off pretty well when it comes to
patching code. What could I be doing wrong?

Thanks in advance,


Luis
-- 
-------------------------------------------------
GNU-GPL: "May The Source Be With You...
Linux Registered User #448382.
When I grow up, I wanna be like Theo...
-------------------------------------------------

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/

Reply via email to