git/list[1] front-page[2] threads[3] people[4] search[5] about
 

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

From
MTMichael S. Tsirkin <mst@redhat.com>
Date
May 23, 2013, 21:19 UTC
Message-ID
<20130523211954.GD31421@redhat.com>
In-Reply-To
<7vk3mpeaok.fsf@alter.siamese.dyndns.org>
On Thu, May 23, 2013 at 12:52:11PM -0700, Junio C Hamano wrote:
Show 43 quoted lines
> "Michael S. Tsirkin" <mst@redhat.com> 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@redhat.com>
> > 	To: qemu-devel@nongnu.org
> > 	Cc: "Michael S. Tsirkin" <mst@redhat.com>
> > 	Subject: [PATCH 0/9] virtio: switch to linux headers
> > 	Message-Id: <1369316169-20181-1-git-send-email-mst@redhat.com>
> >
> > 	From: "Michael S. Tsirkin" <mst@redhat.com>
> >
> > Fix by sanitizing before matching to patch author name.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > ---
> >  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?

Yes. I'll have to look at the code more closely. In my testing author here is "Michael S. Tsirkin" <mst@redhat.com> so it matches the sanitized sender. Of course that's because my name does not have non-ascii, just a dot.

Show 6 quoted lines
> 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?
OK so now you are ok with this last bit, right?
Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 6 in “git-send-email: fix handling of special characters”
  1. git-send-email: fix handling of special charactersMichael S. Tsirkin, May 23, 2013
  2. Junio C HamanoMay 23, 2013
  3. Junio C HamanoMay 23, 2013
  4. Michael S. TsirkinMay 23, 2013
  5. Junio C HamanoMay 23, 2013
  6. Michael S. TsirkinMay 23, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.