Commit 270c49a0 authored by Joe Perches's avatar Joe Perches Committed by Linus Torvalds

checkpatch: update signature "might be better as" warning

email header lines can look like signature tags.  It's valid to have
multiple email recipients on a single line but not valid to have multiple
signatures on a single line.

Validate signatures only when not in the email headers.

Clear the $in_commit_log flag when the patch filename appears.

Add '-' to the valid chars in a message header for headers
like "Message-Id:" and "In-Reply-To:".
Signed-off-by: default avatarJoe Perches <joe@perches.com>
Reported-by: default avatarJulia Lawall <julia.lawall@lip6.fr>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 96b62067
...@@ -1504,9 +1504,11 @@ sub process { ...@@ -1504,9 +1504,11 @@ sub process {
if ($line =~ /^diff --git.*?(\S+)$/) { if ($line =~ /^diff --git.*?(\S+)$/) {
$realfile = $1; $realfile = $1;
$realfile =~ s@^([^/]*)/@@; $realfile =~ s@^([^/]*)/@@;
$in_commit_log = 0;
} elsif ($line =~ /^\+\+\+\s+(\S+)/) { } elsif ($line =~ /^\+\+\+\s+(\S+)/) {
$realfile = $1; $realfile = $1;
$realfile =~ s@^([^/]*)/@@; $realfile =~ s@^([^/]*)/@@;
$in_commit_log = 0;
$p1_prefix = $1; $p1_prefix = $1;
if (!$file && $tree && $p1_prefix ne '' && if (!$file && $tree && $p1_prefix ne '' &&
...@@ -1546,7 +1548,8 @@ sub process { ...@@ -1546,7 +1548,8 @@ sub process {
} }
# Check signature styles # Check signature styles
if ($line =~ /^(\s*)($signature_tags)(\s*)(.*)/) { if (!$in_header_lines &&
$line =~ /^(\s*)($signature_tags)(\s*)(.*)/) {
my $space_before = $1; my $space_before = $1;
my $sign_off = $2; my $sign_off = $2;
my $space_after = $3; my $space_after = $3;
...@@ -1623,7 +1626,7 @@ sub process { ...@@ -1623,7 +1626,7 @@ sub process {
# Check if it's the start of a commit log # Check if it's the start of a commit log
# (not a header line and we haven't seen the patch filename) # (not a header line and we haven't seen the patch filename)
if ($in_header_lines && $realfile =~ /^$/ && if ($in_header_lines && $realfile =~ /^$/ &&
$rawline !~ /^(commit\b|from\b|\w+:).+$/i) { $rawline !~ /^(commit\b|from\b|[\w-]+:).+$/i) {
$in_header_lines = 0; $in_header_lines = 0;
$in_commit_log = 1; $in_commit_log = 1;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment