Comments (3)
Note: The Database schema (for mysql at least) specifies 'CHARACTER SET ascii', so this will need to be updated to handle the storage of UTF-8 in reports.
rfc7489 specifies that domains must be converted to a-label form, but is ambiguous regarding the remaining data in the report.
A quick fix may be to convert everything to ascii before saving the report, but this is likely to break (or at least not fix, because they are likely already broken) EAI addresses.
from mail-dmarc.
A quick fix may be to convert everything to ascii before saving the report
Sounds like the right choice, based on my read of RFC 8616.
but this is likely to break (or at least not fix, because they are likely already broken) EAI addresses.
True, but will it matter? New reports will be saved with the new converted a-label form, which should fix all future reports, and solve this issue, right?
RFC 8616, Section 6
DMARC and Internationalized Mail
DMARC RFC7489 defines a policy language that domain owners can
specify for the domain of the address in an RFC5322.From header
field.
Section 6.6.1 of RFC7489 specifies, somewhat imprecisely, how IDNs
in the RFC5322.From address domain are to be handled. That section
is updated to say that all U-labels in the domain are converted to
A-labels before further processing. Section 7.1 of RFC7489 is
similarly updated to say that all U-labels in domains being handled
are converted to A-labels before further processing.
DMARC policy records, described in Sections 6.3 and 7.1 of RFC7489,
can contain email addresses in the "rua" and "ruf" tags. Since a
policy record can be used for both internationalized and conventional
mail, those addresses still have to be conventional addresses, not
internationalized addresses. DMARC and Internationalized Mail
DMARC RFC7489 defines a policy language that domain owners can
specify for the domain of the address in an RFC5322.From header
field.
Section 6.6.1 of RFC7489 specifies, somewhat imprecisely, how IDNs
in the RFC5322.From address domain are to be handled. That section
is updated to say that all U-labels in the domain are converted to
A-labels before further processing. Section 7.1 of RFC7489 is
similarly updated to say that all U-labels in domains being handled
are converted to A-labels before further processing.
DMARC policy records, described in Sections 6.3 and 7.1 of RFC7489,
can contain email addresses in the "rua" and "ruf" tags. Since a
policy record can be used for both internationalized and conventional
mail, those addresses still have to be conventional addresses, not
internationalized addresses.
from mail-dmarc.
Because the data column that stored domains and author info were explicitly declared as ASCII, I think (limited testing) that mysql would have converted any unicode characters to a ?
character. Near as I can tell, that original character data is lost. If I'm wrong and MySQL stored the character code correctly, then the changes below will automatically do The Right Thing.
Now that MySQL 8 is the minimum supported version, changing the schema to enable UTF-8 chars is no longer messy and fraught with pitfalls.
The SQL code shown on the mysql wiki page should do the needful.
from mail-dmarc.
Related Issues (20)
- dmarc_send_reports causing protocol synchronization errors on receiving MTA
- error sending report: Can't locate object method "code" via package "timeout " HOT 1
- Would like to have a way to specify port and ssl actions for imap
- t/04.PurePerl.t started to fail
- Reports with delivery issues aren't removed HOT 1
- Possible issue with ARC-signed emails HOT 2
- spamassassin 4 fails to make dmarc repots HOT 2
- Is Net::SSLeay used ? HOT 1
- use MIME::Entity and MIME::Parser from MIME::Tools instead of Email::MIME HOT 3
- Disposition is 'reject' but should be 'none' for subdomain HOT 3
- Unable to view backends in ./t/travis/backends HOT 4
- Several issues in file search functions
- TLS is not properly enforced for IMAP connections HOT 2
- Unsafe use of eval in Report::Store
- Broken links in README.md
- "Use of uninitialized value" messages HOT 1
- Support attachments as input directly
- add a to_string method to Mail::DMARC::Policy
- dmarc_view_reports: allow filtering by and displaying report ID
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mail-dmarc.