Re: [PATCH] git-send-email: fix handling of special characters

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Michael S. Tsirkin" <mst@xxxxxxxxxx> writes:

> When patch sender's name has special characters,
> git send-email did not quote it before matching
> against the author name.
> As a result it would produce mail like this:
>
> 	Date: Thu, 23 May 2013 16:36:00 +0300
> 	From: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
> 	To: qemu-devel@xxxxxxxxxx
> 	Cc: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
> 	Subject: [PATCH 0/9] virtio: switch to linux headers
> 	Message-Id: <1369316169-20181-1-git-send-email-mst@xxxxxxxxxx>
>
> 	From: "Michael S. Tsirkin" <mst@xxxxxxxxxx>
>
> Fix by sanitizing before matching to patch author name.
>
> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
> ---
>  git-send-email.perl | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/git-send-email.perl b/git-send-email.perl
> index bd13cc8..c4dc438 100755
> --- a/git-send-email.perl
> +++ b/git-send-email.perl
> @@ -1400,7 +1400,8 @@ foreach my $t (@files) {
>  		$subject = quote_subject($subject, $auto_8bit_encoding);
>  	}
>  
> -	if (defined $author and $author ne $sender) {
> +	my $sanitized_sender = sanitize_address($sender);
> +	if (defined $author and $author ne $sanitized_sender) {
>  		$message = "From: $author\n\n$message";
>  		if (defined $author_encoding) {
>  			if ($has_content_type) {

Is $author already sanitized at this point in the code?  I see it
was unwrapped with unquote_rfc2047 after it was read from the From:
line; will it always be the same as sanitize_address($author) would
return, and if not, would you rather compare between sanitized
versions of sender and author, no?

Also, isn't the $sender the same during the whole outer loop that
iterates over @files?  Do we need to apply sanitize_address() on it
over and over for each and every logical line in the @header?

This comment also applies to the other patch but they probably
should become a single patch anyway, I guess?


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]