php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #81615 Windows mail should support internationalized email
Submitted: 2021-11-12 11:00 UTC Modified: 2021-11-30 12:45 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: gblanchet at cofomo dot com Assigned:
Status: Open Package: Mail related
PHP Version: 8.0.12 OS: Windows
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please — but make sure to vote on the bug!
Your email address:
MUST BE VALID
Solve the problem:
29 + 47 = ?
Subscribe to this entry?

 
 [2021-11-12 11:00 UTC] gblanchet at cofomo dot com
Description:
------------
WHAT I DID:

I try to send an email with non-ASCII characters in it (RFC6530 and the following, see https://en.wikipedia.org/wiki/International_email).

WHAT I WANTED TO HAPPEN:

I wanted to see the support of the EAI protocol, that is, I wanted to see the domain part converted to an A-LABEL and to see the mail function sends the SMTPUTF8 flag.

WHAT ACTUALLY HAPPENED:

The mail is sent as is without transferring the SMTUTF8 flag.

Test script:
---------------
<?php

mail("email-épreuve@épreuve-acceptation-universelle.org", "TEST FROM PHP WINDOWS...", "body");


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2021-11-12 11:44 UTC] heiglandreas@php.net
According to https://php.net/mail the *to*-parameter "must comply with » RFC 2822". Which does not allow anything else than ASCII.

As the SMTPUTF8 flag is defined in RFC6531 which is titled "SMTP Extension for Internationalized Email". Every client and server implementation can, but does not have to, implement it. 

So it is perfectly valid that the mail-function for windows so far does not support Internationalized Email. 

If you need that feature, check out one of the many mail-libraries on https://packagist.org
 [2021-11-15 11:05 UTC] cmb@php.net
-Summary: mail function does not send SMTUTF8 flag when sending internationalized emails +Summary: Windows mail should support internationalized email -Type: Bug +Type: Feature/Change Request
 [2021-11-15 11:05 UTC] cmb@php.net
Changing to feature request per the comment above.
 [2021-11-15 19:21 UTC] gblanchet at cofomo dot com
Thanks a lot for the quick response. I tried some libraries (like PHPMailer), but many seems to not support it. Maybe the PHP native lib could lead the way in this matter? It would be great to have a native mail function supporting internationalization. 

I agree it is more a feature than a bug, though. 

Best regards
 [2021-11-30 12:45 UTC] cmb@php.net
> Maybe the PHP native lib could lead the way in this matter?

Frankly, I doubt that.  Given that the direct SMTP support for
mail() is Windows specific (other systems always use an MTA such
as sendmail, and that is possible on Windows as well), the
moderate amount of work on the implementation[1], and the fact
that implementing this in C is error-prone and unlikely to be much
more efficient than a PHP implementation, it might be preferable
to drop the implementation at all, in favor of userland libraries.

[1] <https://github.com/php/php-src/commits/master/win32/sendmail.c>
 
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Thu Aug 18 23:03:49 2022 UTC