Messages in this thread Patch in this message | | | From | "John 'Warthog9' Hawley (VMware)" <> | Subject | [PATCH] checkpatch: Add check for common mailing list helper checks | Date | Fri, 2 Jul 2021 15:37:43 -0700 |
| |
From: John 'Warthog9' Hawley <warthog9@eaglescrag.net>
Mailing lists in an attempt to try and avoid sending certain administrative e-mails to the list, will check the first few lines (usually ~10) looking for keywords. If those key words are found it shunts the e-mail to the list admin contact instead of potentially passing it through to the list.
This adds a known list of the potential things that are checked for, and while it may search deeper into the message (it goes till it believes it's into the patch section) than the mailing list software this should help give some warning if the wrong word is potentially added in the wrong place in the beginning of a patch message.
Signed-off-by: John 'Warthog9' Hawley (VMware) <warthog9@eaglescrag.net> --- scripts/checkpatch.pl | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+)
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 461d4221e4a4..c2f6e349f304 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -2852,6 +2852,40 @@ sub process { $cnt_lines++ if ($realcnt != 0); +# check if this may trip up common mailing list helpers to redirect email to the admin contact + if ($in_commit_log && + ($line =~ /\bcancel\b/i || + $line =~ /\badd me\b/i || + $line =~ /\bdelete me\b/i || + $line =~ /\bremove\s+me\b/i || + $line =~ /\bchange\b.*\baddress\b/ || + $line =~ /\bsubscribe\b/i || + $line =~ /^sub\b/i || + $line =~ /\bunsubscribe\b/i || + $line =~ /^unsub\b/i || + $line =~ /^\s*help\s*$/i || + $line =~ /^\s*info\s*$/i || + $line =~ /^\s*info\s+\S+\s*$/i || + $line =~ /^\s*lists\s*$/i || + $line =~ /^\s*which\s*$/i || + $line =~ /^\s*which\s+\S+\s*$/i || + $line =~ /^\s*index\s*$/i || + $line =~ /^\s*index\s+\S+\s*$/i || + $line =~ /^\s*who\s*$/i || + $line =~ /^\s*who\s+\S+\s*$/i || + $line =~ /^\s*get\s+\S+\s*$/i || + $line =~ /^\s*get\s+\S+\s+\S+\s*$/i || + $line =~ /^\s*approve\b/i || + $line =~ /^\s*passwd\b/i || + $line =~ /^\s*newinfo\b/i || + $line =~ /^\s*config\b/i || + $line =~ /^\s*newconfig\b/i || + $line =~ /^\s*writeconfig\b/i || + $line =~ /^\s*mkdigest\b/i)){ + WARN("MAILING LIST HELPER", + "Line matches common mailing list helpers, and may not be delivered correctly. Consider rewording (particularly the first word)\n" . $herecurr); + } + # Verify the existence of a commit log if appropriate # 2 is used because a $signature is counted in $commit_log_lines if ($in_commit_log) { -- 2.26.3
| |