[patch v2] checkpatch: Signature format verification

From: anish
Date: Sun May 22 2011 - 06:19:18 EST


From: anish kumar <anish198519851985@xxxxxxxxx>

This patch generates warning when there is no space between
the patch submitter and successive mail-id.

Modification:Suggested by Joe Perches(joe@xxxxxxxxxxx) that
we can add this check for all signature types so added that
change and added logic to remove the inefficent looping so
that it can come out as soon as signature type is matched.

Signed-off-by: anish kumar <anish198519851985@xxxxxxxxx>
---
scripts/checkpatch.pl | 30 +++++++++++++++++++++---------
1 files changed, 21 insertions(+), 9 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index d867081..0622f41 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -29,6 +29,8 @@ my $summary_file = 0;
my $root;
my %debug;
my $help = 0;
+my ($sign,$loop_brk);
+my @signs = ("Reviewed-by:","Acked-by:","Signed-off-by:","Tested-by:");

sub help {
my ($exitcode) = @_;
@@ -1365,20 +1367,30 @@ sub process {
}
}

-#check the patch for a signoff:
- if ($line =~ /^\s*signed-off-by:/i) {
- # This is a signoff, if ugly, so do not double report.
- $signoff++;
- if (!($line =~ /^\s*Signed-off-by:/)) {
- WARN("Signed-off-by: is the preferred form\n" .
+#check the patch for a signoff/Reviewed/Acked/Tested:
+foreach $sign (@signs) {
+ $loop_brk=0;
+ if ($line =~ /^\s*$sign/i) {
+ # This is a signoff, if ugly, so do not double report.
+ $signoff++;
+ $loop_brk++;
+ if (!($line =~ /^\s*$sign/)) {
+ WARN("$sign is the preferred form\n" .
+ $herecurr);
+ }
+ if ($line =~ /^\s*$sign(.*)/i) {
+ if($1 !~ /^\s*(\s[a-zA-Z]*.*)/i) {
+ WARN("Space required after $sign\n" .
$herecurr);
}
- if ($line =~ /^\s*signed-off-by:\S/i) {
- WARN("space required after Signed-off-by:\n" .
+ if($1 !~ /[\sa-zA-Z]+\s<.*>/i) {
+ WARN("Space required b/w Full Name & Mail-id:\n" .
$herecurr);
}
}
-
+ }
+last if ($loop_brk == 1);
+}
# Check for wrappage within a valid hunk of the file
if ($realcnt != 0 && $line !~ m{^(?:\+|-| |\\ No newline|$)}) {
ERROR("patch seems to be corrupt (line wrapped?)\n" .
--
1.7.0.4


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