checkpatch: make email address check case insensitive
authorMimi Zohar <zohar@linux.ibm.com>
Wed, 8 Sep 2021 02:59:54 +0000 (19:59 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 8 Sep 2021 18:50:27 +0000 (11:50 -0700)
Instead of checkpatch requiring the patch author to exactly match the
signed-off-by tag, commit 48ca2d8ac8a1 ("checkpatch: add new warnings to
author signoff checks.") safely relaxed this requirement.

Although the local-part of an email address (local-part@domain), may be
case sensitive, exploiting the case sensitivity of mailbox local-parts
impedes interoperability and is discouraged.  Mailbox domains follow
normal DNS rules and are hence not case sensitive.  (Refer to
https://datatracker.ietf.org/doc/html/rfc5321#section-2.4.)

Further relax the patch author and signed-off-by tag comparison by making
the email address check case insensitive.

Link: https://lkml.kernel.org/r/20210816112725.173206-1-zohar@linux.ibm.com
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
Acked-by: Joe Perches <joe@perches.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
scripts/checkpatch.pl

index a65753c..161ce7f 100755 (executable)
@@ -2909,10 +2909,10 @@ sub process {
                                        my ($email_name, $email_comment, $email_address, $comment1) = parse_email($ctx);
                                        my ($author_name, $author_comment, $author_address, $comment2) = parse_email($author);
 
-                                       if ($email_address eq $author_address && $email_name eq $author_name) {
+                                       if (lc $email_address eq lc $author_address && $email_name eq $author_name) {
                                                $author_sob = $ctx;
                                                $authorsignoff = 2;
-                                       } elsif ($email_address eq $author_address) {
+                                       } elsif (lc $email_address eq lc $author_address) {
                                                $author_sob = $ctx;
                                                $authorsignoff = 3;
                                        } elsif ($email_name eq $author_name) {