MyBB Community Forums

Full Version: [F] Mail bug
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Quote:A message that you sent contained one or more recipient addresses that were
incorrectly constructed:

mr [email protected]: missing or malformed local part (expected word or "<")

This address has been ignored. There were no other addresses in your
message, and so no attempt at delivery was possible.

The space in the middle is screwing it up. Shouldn't it be changed to %20 or something like that?
I don't believe you can have spaces in an email address. This should be checked or corrected on signups. Maybe spaces aren't checked on validation?
hmm interesting. I believe your right.
labrocca is right, there can't be whitespace in the email address.
The thing is whitelisting characters is a lot harder for emails now that Unicode is allowed in addresses.
Technically spaces are allowed so long as they're in quotation marks
Quote:Additionally, RFC 2821 and RFC 2822 allow the local-part to be a quoted-string, as in "John Doe"@example.com, thus allowing characters in the local-part that would otherwise be prohibited.
But I've never seen anything like that before Toungue
I thought the quoted area was the name.  i.e.  "jesse labrocca"<[email protected]> or something like that.  At least that's what I see all the time in emails I get.

I doubt "jesse labrocca"@domain.com will work.


Ahh..just read this at wikipedia.

http://en.wikipedia.org/wiki/E-mail_address
Quote:Local part is the portion of a mail address before the @ character. This normally identifies a particular mailbox within a site mail system so is not usually of interest to other mail systems.

According to RFC 2822, the local-part of the address may use any of these ASCII characters:
Uppercase and lowercase letters (case sensitive)
The digits 0 through 9
The characters ! # $ % & ' * + - / = ? ^ _ ` { | } ~
The character . provided that it is not the first or last character in the local-part.

Additionally, RFC 2821 and RFC 2822 allow the local-part to be a quoted-string, as in "John Doe"@example.com, thus allowing characters in the local-part that would otherwise be prohibited. However, RFC 2821 warns: "a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses) the Quoted-string form".

So yes... "jon doe"@example.com COULD work but it's not recommended as it may be rejected by recipient.
So..
if(strpos($email, ' ') !== false)
{
return false;
}
Would probably work then.
This bug has been fixed in the latest code.

Please note the latest code is not live on the site or for download. An update will be released which contains this fix.