* [PATCH] git-send-email: treat field names as case-independent
@ 2013-01-07 1:34 Nickolai Zeldovich
2013-01-07 3:27 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Nickolai Zeldovich @ 2013-01-07 1:34 UTC (permalink / raw)
To: gitster; +Cc: Nickolai Zeldovich, git
Field names like To:, Cc:, etc should be treated as case-independent;
use a case-insensitive regexp to match them as such. Previously,
git-send-email would send email messages with a lowercase "cc:" line in
the body without actually sending a copy of the message to that address.
Signed-off-by: Nickolai Zeldovich <nickolai@csail.mit.edu>
---
git-send-email.perl | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/git-send-email.perl b/git-send-email.perl
index 94c7f76..be809e5 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -1285,10 +1285,10 @@ foreach my $t (@files) {
}
if (defined $input_format && $input_format eq 'mbox') {
- if (/^Subject:\s+(.*)$/) {
+ if (/^Subject:\s+(.*)$/i) {
$subject = $1;
}
- elsif (/^From:\s+(.*)$/) {
+ elsif (/^From:\s+(.*)$/i) {
($author, $author_encoding) = unquote_rfc2047($1);
next if $suppress_cc{'author'};
next if $suppress_cc{'self'} and $author eq $sender;
@@ -1296,14 +1296,14 @@ foreach my $t (@files) {
$1, $_) unless $quiet;
push @cc, $1;
}
- elsif (/^To:\s+(.*)$/) {
+ elsif (/^To:\s+(.*)$/i) {
foreach my $addr (parse_address_line($1)) {
printf("(mbox) Adding to: %s from line '%s'\n",
$addr, $_) unless $quiet;
push @to, $addr;
}
}
- elsif (/^Cc:\s+(.*)$/) {
+ elsif (/^Cc:\s+(.*)$/i) {
foreach my $addr (parse_address_line($1)) {
if (unquote_rfc2047($addr) eq $sender) {
next if ($suppress_cc{'self'});
@@ -1325,7 +1325,7 @@ foreach my $t (@files) {
elsif (/^Message-Id: (.*)/i) {
$message_id = $1;
}
- elsif (!/^Date:\s/ && /^[-A-Za-z]+:\s+\S/) {
+ elsif (!/^Date:\s/i && /^[-A-Za-z]+:\s+\S/) {
push @xh, $_;
}
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] git-send-email: treat field names as case-independent
2013-01-07 1:34 [PATCH] git-send-email: treat field names as case-independent Nickolai Zeldovich
@ 2013-01-07 3:27 ` Junio C Hamano
2013-01-07 3:38 ` Nickolai Zeldovich
0 siblings, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2013-01-07 3:27 UTC (permalink / raw)
To: Nickolai Zeldovich; +Cc: git
Nickolai Zeldovich <nickolai@csail.mit.edu> writes:
> Field names like To:, Cc:, etc should be treated as case-independent;
> use a case-insensitive regexp to match them as such. Previously,
> git-send-email would send email messages with a lowercase "cc:" line in
> the body without actually sending a copy of the message to that address.
>
> Signed-off-by: Nickolai Zeldovich <nickolai@csail.mit.edu>
> ---
While I think this patch is a sensible thing to do, I at the same
time wonder who is writing "cc:" in the lowercase in the first
place, and if that is one of our tools, we should fix that part as
well. Such a header would leak out to the payload given to the
underlying sendmail, doesn't it?
Leaking such lowercased headers of course is not a crime (the
headers are case insensitive), but they look ugly.
> git-send-email.perl | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/git-send-email.perl b/git-send-email.perl
> index 94c7f76..be809e5 100755
> --- a/git-send-email.perl
> +++ b/git-send-email.perl
> @@ -1285,10 +1285,10 @@ foreach my $t (@files) {
> }
>
> if (defined $input_format && $input_format eq 'mbox') {
> - if (/^Subject:\s+(.*)$/) {
> + if (/^Subject:\s+(.*)$/i) {
> $subject = $1;
> }
> - elsif (/^From:\s+(.*)$/) {
> + elsif (/^From:\s+(.*)$/i) {
> ($author, $author_encoding) = unquote_rfc2047($1);
> next if $suppress_cc{'author'};
> next if $suppress_cc{'self'} and $author eq $sender;
> @@ -1296,14 +1296,14 @@ foreach my $t (@files) {
> $1, $_) unless $quiet;
> push @cc, $1;
> }
> - elsif (/^To:\s+(.*)$/) {
> + elsif (/^To:\s+(.*)$/i) {
> foreach my $addr (parse_address_line($1)) {
> printf("(mbox) Adding to: %s from line '%s'\n",
> $addr, $_) unless $quiet;
> push @to, $addr;
> }
> }
> - elsif (/^Cc:\s+(.*)$/) {
> + elsif (/^Cc:\s+(.*)$/i) {
> foreach my $addr (parse_address_line($1)) {
> if (unquote_rfc2047($addr) eq $sender) {
> next if ($suppress_cc{'self'});
> @@ -1325,7 +1325,7 @@ foreach my $t (@files) {
> elsif (/^Message-Id: (.*)/i) {
> $message_id = $1;
> }
> - elsif (!/^Date:\s/ && /^[-A-Za-z]+:\s+\S/) {
> + elsif (!/^Date:\s/i && /^[-A-Za-z]+:\s+\S/) {
> push @xh, $_;
> }
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] git-send-email: treat field names as case-independent
2013-01-07 3:27 ` Junio C Hamano
@ 2013-01-07 3:38 ` Nickolai Zeldovich
2013-01-07 7:47 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Nickolai Zeldovich @ 2013-01-07 3:38 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
On Sun, Jan 6, 2013 at 10:27 PM, Junio C Hamano <gitster@pobox.com> wrote:
> While I think this patch is a sensible thing to do, I at the same
> time wonder who is writing "cc:" in the lowercase in the first
> place, and if that is one of our tools, we should fix that part as
> well. Such a header would leak out to the payload given to the
> underlying sendmail, doesn't it?
In my case, I wrote the "cc:" headers by hand; it was not a result of
any automated tool. (Yes, the header makes it into the message
payload. This makes the bug all the more annoying: other people's
replies get cc:ed to the right address, but the original message never
gets sent there.)
Nickolai.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] git-send-email: treat field names as case-independent
2013-01-07 3:38 ` Nickolai Zeldovich
@ 2013-01-07 7:47 ` Junio C Hamano
0 siblings, 0 replies; 4+ messages in thread
From: Junio C Hamano @ 2013-01-07 7:47 UTC (permalink / raw)
To: Nickolai Zeldovich; +Cc: git
Nickolai Zeldovich <nickolai@csail.mit.edu> writes:
> On Sun, Jan 6, 2013 at 10:27 PM, Junio C Hamano <gitster@pobox.com> wrote:
>> While I think this patch is a sensible thing to do, I at the same
>> time wonder who is writing "cc:" in the lowercase in the first
>> place, and if that is one of our tools, we should fix that part as
>> well. Such a header would leak out to the payload given to the
>> underlying sendmail, doesn't it?
>
> In my case, I wrote the "cc:" headers by hand; it was not a result of
> any automated tool.
Ok, thanks for shrinking the list of things that worries me by one ;-)
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-01-07 7:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-07 1:34 [PATCH] git-send-email: treat field names as case-independent Nickolai Zeldovich
2013-01-07 3:27 ` Junio C Hamano
2013-01-07 3:38 ` Nickolai Zeldovich
2013-01-07 7:47 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).