On Thu, 2014-06-05 at 17:00 -0700, Bruce Allan wrote:
> the maximum message size (100,000 characters) allowed by Majordomo at
> vger.kernel.org since that is where most Linux email lists are served.

I believe this is incorrect and the patch is unnecessary.

It'd maybe more interesting if the email header sizes
were calculated and if > 1024, then some bleating message
were emitted.

> Also provide a command-line option to specify a different maximum size.
> 
> Signed-off-by: Bruce Allan <bruce.w.al...@intel.com>
> ---
> 
>  scripts/checkpatch.pl |   15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 34eb216..79bd7fd6 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -40,6 +40,7 @@ my @ignore = ();
>  my $help = 0;
>  my $configuration_file = ".checkpatch.conf";
>  my $max_line_length = 80;
> +my $max_msg_size = 100000;   # Max allowed by Majordomo at vger.kernel.org
>  my $ignore_perl_version = 0;
>  my $minimum_perl_version = 5.10.0;
>  
> @@ -62,6 +63,7 @@ Options:
>    --types TYPE(,TYPE2...)    show only these comma separated message types
>    --ignore TYPE(,TYPE2...)   ignore various comma separated message types
>    --max-line-length=n        set the maximum line length, if exceeded, warn
> +  --max-msg-size=n           set the maximum message size, if exceeded, warn
>    --show-types               show the message "types" in the output
>    --root=PATH                PATH to the kernel tree root
>    --no-summary               suppress the per-file summary
> @@ -130,6 +132,7 @@ GetOptions(
>       'types=s'       => \@use,
>       'show-types!'   => \$show_types,
>       'max-line-length=i' => \$max_line_length,
> +     'max-msg-size=i' => \$max_msg_size,
>       'root=s'        => \$root,
>       'summary!'      => \$summary,
>       'mailback!'     => \$mailback,
> @@ -4600,6 +4603,18 @@ sub process {
>               exit(0);
>       }
>  
> +     # Warn if patch exceeds the maximum message size
> +     if (!$file) {
> +             my $cnt_chars = 0;
> +             foreach my $rawline (@rawlines) {
> +                     $cnt_chars += length($rawline) + 1;
> +             }
> +             if ($cnt_chars > $max_msg_size) {
> +                     WARN("PATCH_TOO_LARGE",
> +                          "patch exceeds maximum message size 
> ($max_msg_size) and might be blocked by email list server(s).\n");
> +             }
> +     }
> +
>       if (!$is_patch) {
>               ERROR("NOT_UNIFIED_DIFF",
>                     "Does not appear to be a unified-diff format patch\n");
> 



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to