Outlook 2003 and missing Message-ID

So here’s the deal: Outlook 2003 doesn’t include the Message-ID header if you are sending email through a mail server other than Microsoft Exchange. There are other rants about this:

  1. from Peter Pentchev
  2. from Terry Frazier

And they both point to this priceless news bulletin, which contains this gem:

According to Mark, Microsoft apparently had a few complaints from people using Outlook that their machine name was “leaked” in the Message-ID header. Instead of ignoring the complaint or making the host name used in the Message-ID header configurable, Microsoft chose to remove the Message-ID header.

Technically, Outlook 2003 is still RFC-compliant, if Microsoft accepts the fact that messages sent from Outlook 2003 may be marked as spam. Most spam filters that look at Message-ID use that as only one of many factors weighted to determine if a particular message is likely to be spam. Administrators may want to check the weighting for that particular factor and lower it to avoid having too many incoming Outlook 2003 messages marked as spam by mistake.

Mark says that, as he understands it, Microsoft’s position that they expect all mail servers to whitelist outgoing mail from Outlook 2003 users and add a Message-ID header to fill in the one that Outlook omits. To me, that seems a bit much to ask. Why couldn’t Outlook itself add its own Message-ID header that doesn’t reveal personal or computer information?

Stay tuned. I don’t think we’ve heard the last of this issue.

No, that was really the last of this issue. Microsoft did indeed change the behavior in Outlook 2003, and there’s nothing we can do about it. Well, besides add yet another level of hatred here, of course.

So what does one need to do to uniquely identify messages if this is happening? Eventum uses the value on the Message-ID header to decide whether it should download a message from a POP3/IMAP server or not, so if there’s no value on that header, all hell breaks loose.

All I can think of right now is to generate some sort of checksum for each message and check the database when downloading messages to see if we already have a copy or not.

But deep down, I personally blame Peter W. Resnick (the editor of RFC2822) for using SHOULD instead of MUST for the Message-ID header. Here’s some love, Pete.

1 Comment »

  1. jmt said,

    November 21, 2005 @ 7:48 am

    I discovered this message ID problem when trying to email folks using Eudora’s email server. The messages weren’t arriving. Fortunately I knew the folks managing the server and they were able to document the “SPAM” I was sending (Eudora was configured to treat email without message IDs as SPAM).

    I complained at length to MS and they eventually confessed that Outlook 2003 was designed to omit the message ID, and then offered my money back on the purchase. I would have immediately taken them up on the offer if there were a viable product substitute for Outlook.

    So I ended up finding another solution to the problem. I installed a small SMTP server utility on my PC called MailExpress Lite (www.idataexpress.com). Cost: US$19.95. All my Outlook 2003 email gets directed through it and it adds a (user-configurable) message ID to the email header. No more delivery problems, plus some other added benefits like sending email through SMTP-restricted wireless access points in coffee shops and airports, and proof of delivery to the recipients’ POP server.

    So in the end I am not too unhappy. Still, the fact that a customer has to add an SMTP server to his PC to get a disfunctional MS email product to work reliably is a pretty sad statement about the devolution of MS software. And MS is certainly bold to charge what it does for what is undeniably a sub-optimal product.


RSS feed for comments on this post · TrackBack URI

Leave a Comment