git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* git-am fails for emails with UTF8 characters in email header
@ 2019-09-13 20:07 Siddharth Chandrasekaran
  2019-09-13 22:20 ` brian m. carlson
  0 siblings, 1 reply; 2+ messages in thread
From: Siddharth Chandrasekaran @ 2019-09-13 20:07 UTC (permalink / raw)
  To: gitster; +Cc: git

Hi Junio,

My email server (zoho) puts leading UTF-8 non-breaking spaces ("\xC2\xA0")
when folding long mail headers. Due to this, git-am is failing as it expects
only '\t' or ' ' characters.

RFC2822 [1] on page 7 states:

> The general rule is that wherever this standard allows for folding white
> space (not simply WSP characters), a CRLF may be inserted before any WSP.

It appears the RFC isn't too strict about ASCII only headers (correct me if I'm
wrong here); ergo, if the mail file is in UTF-8, isn't logical to expect UTF-8
whitespace characters also to be allowed in the fold/unfold of headers?

I was able to get git-am to work with modifications to read_one_header_line()
in mailinfo.c need your view on whether a patch is necessary for this. If so, I can
send a patch for this.

Thanks
Sid.

Footnotes:
[1]: https://www.ietf.org/rfc/rfc2822.txt






^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: git-am fails for emails with UTF8 characters in email header
  2019-09-13 20:07 git-am fails for emails with UTF8 characters in email header Siddharth Chandrasekaran
@ 2019-09-13 22:20 ` brian m. carlson
  0 siblings, 0 replies; 2+ messages in thread
From: brian m. carlson @ 2019-09-13 22:20 UTC (permalink / raw)
  To: Siddharth Chandrasekaran; +Cc: gitster, git

[-- Attachment #1: Type: text/plain, Size: 1854 bytes --]

On 2019-09-13 at 20:07:24, Siddharth Chandrasekaran wrote:
> Hi Junio,
> 
> My email server (zoho) puts leading UTF-8 non-breaking spaces ("\xC2\xA0")
> when folding long mail headers. Due to this, git-am is failing as it expects
> only '\t' or ' ' characters.
> 
> RFC2822 [1] on page 7 states:
> 
> > The general rule is that wherever this standard allows for folding white
> > space (not simply WSP characters), a CRLF may be inserted before any WSP.
> 
> It appears the RFC isn't too strict about ASCII only headers (correct me if I'm
> wrong here); ergo, if the mail file is in UTF-8, isn't logical to expect UTF-8
> whitespace characters also to be allowed in the fold/unfold of headers?

RFC 5322 (the email specification) doesn't allow non-ASCII characters
anywhere in the header of an email.  RFC 6532, which allows UTF-8 in
header fields if the message is transported via SMTP using the SMTPUTF8
extension, doesn't allow UTF-8 characters to appear in the WSP
production, and therefore doesn't allow them as folding whitespace.
Only space and tab are permitted in WSP.

It appears that your mail server is broken, and it would probably be
best to get it fixed instead of trying to get git-am to work with it.
There are servers which reject messages which are malformed, and even if
your mail gets delivered, there are a bunch of mail clients which will
mishandle it.

> I was able to get git-am to work with modifications to read_one_header_line()
> in mailinfo.c need your view on whether a patch is necessary for this. If so, I can
> send a patch for this.

I don't think such a patch would be a good idea.  I definitely think we
should support SMTPUTF8 and internationalized email, but this particular
issue isn't such a case.
-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 868 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-09-13 22:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-13 20:07 git-am fails for emails with UTF8 characters in email header Siddharth Chandrasekaran
2019-09-13 22:20 ` brian m. carlson

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).