SMTPUTF8 support issue #180
Replies: 3 comments 1 reply
-
Hi @gegorov2030, that's an interesting issue. I'll have to do some investigation and testing to see what would be the best solution. The good thing is that we forked Regarding PowerMTA, I've never heard of that product before. Is there a way for me to install that on my DEV machine, so I can perform some testing myself? I'll invest some time tomorrow and see what I can come up with. |
Beta Was this translation helpful? Give feedback.
-
Reading further into RFC 6531, the SMTPUTF8 extension does not only focus on envelope addresses like the FROM and TO addresses, but it can also add UTF-8 headers like Message-ID and so on. So to detect if we actually need SMTPUTF8, we would probably need to scan all headers for any non-ASCII character and then decide on that. Additionally the So my idea for a simple workaround is, since this seem to be isolated to PowerMTA, that maybe we just add a bool flag to the smtp client Alternatively we actually build some header scanner that makes sure no UTF8 is within the headers and then automagically triggers that flag, so that we only issue the extension if support and actually needed. |
Beta Was this translation helpful? Give feedback.
-
Thank you for the additional research you did. There is no issue for me to use the option in my personal fork. I don’t see the need to add this case for everyone while cluttering the API with additional options. I like the idea of scanning all message headers in Client.Mail, but yes, this would require losing backward compatibility. Perhaps it's worth delaying this change until other big changes happen? |
Beta Was this translation helpful? Give feedback.
-
In my project involving PowerMTA, I've identified a critical issue that warrants attention. PowerMTA consistently signals SMTPUTF8 support availability upon connection. This standard behavior leads to complications: PowerMTA enforces SMTPUTF8 support requests when interfacing with subsequent ESP nodes, such as Yahoo and AOL, which do not support SMTPUTF8. This mismatch results in PowerMTA rejecting emails without verifying the actual need for SMTPUTF8 support in each case.
The core of the challenge lies in adapting the Client.Mail(from) method, which is constrained by its reliance on private methods, thus limiting flexibility in behavior modification. The method's design, specifically the construction of the command string (cmdStr), is rigid and doesn't accommodate changes in SMTPUTF8 handling.
My thoughts on possible solutions are:
An additional consideration is implementing a default mechanism to evaluate the necessity of SMTPUTF8, based on the email address. If an address lacks specific UTF8 characters, the SMTPUTF8 extension requirement could potentially be bypassed.
Thank you, for any suggestions
Beta Was this translation helpful? Give feedback.
All reactions