Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
All
Description
Per RFC822, the domain portion of an email address may contain any ASCII character other than chars 0-31 (control characters), 32 (space character) and any of the following: "(", ")", "<", ">", "@", ",", ";", ":", "\", <", ".", "[", "]".
However, RFC1034, the DNS Domain Name spec specifies that domain names can only contain alpha numerical characters and the hyphen/dot characters.
The RFC's contradict each other and while technically the EmailValidator class is doing what it says (in that it does not guarantee to catch all errors) when one passes in an email address of the form foo@bar+3.com it yields a potentially bad email address which the user won't find out about until they actually try and send the email message. I've not yet found a mail server that accepts an email address of this format, however it is possible there are legacy systems out there that do support it.
I realize that this is not a bug, per se, but it seems like EmailValidator should probably do something or provide some mechanism to ensure that the email address specified is as valid as possible than waiting until the message is actually sent before failing.
I am, however, open to discussion.
This bug was also filed against the JavaMail API's InternetAddress class here: https://kenai.com/bugzilla/show_bug.cgi?id=202