Retrieve Email with SBS 2008 using the Pop3 connector gives the error "have invalid header fields"

Posted on 2009-04-21
Last Modified: 2013-11-29
Has anyone found a permament solution for retrienving email through a POP3 connector for SBS 2008.  I continue to get and repair the "One or more (1) e-mail messages in the POP3 mailbox account '' on the POP3 server '' have invalid header fields. Because of this, the messages cannot be delivered to the Exchange Server mailbox '' in Windows Small Business Server. The messages are still on the POP3 server. To resolve this issue, connect to the POP3 mailbox account, and then manually retrieve or delete the messages."  

I found a very informative discussion about this on the Microsoft Website (link below), with a  poor work around, but no solution.  Any help out there would be appreciated.
Question by:runright
    LVL 65

    Accepted Solution

    The only permanent resolution is to drop the POP3 connector completely and use Exchange as it was designed - SMTP delivery. The POP3 connector is not designed for long term use, just to help you move to SMTP delivery.


    Author Closing Comment

    I have gone back to to handle POP3 email

    Expert Comment

    The only problem with that being an open port 25, while with POP3, the server initiates retrieval of mail, comforably from behind a firewall.
    Microsoft has changed the POP connector in 2008 versions, I have used the the 2003 pop connector without any problems in the past.
    I still have the same issue as runright, and I woul like to see it solved.

    Expert Comment

    To followup with the group, Fred kindly sent his log, and this is what was

    Exchange will close an SMTP connection after a certain number of protocol
    errors (5 by default). (see the MaxProtocolErrors property of the
    ReceiveConnector object at:

    When the SBS 2008 pop3connector downloads a message from a POP3 mailbox, it
    needs to figure out what the "return path" for the mail should be, which it
    does by reading the email's headers. The pop3connector does not do
    validation of the header value--it lets Exchange take care of that. If the
    header value that the pop3connector chooses is malformed, when it is sent to
    the Exchange server (as part of the "MAIL FROM" command), Exchange will
    reject it with a 501 error. That counts as a "protocol error", and therefore
    is counted against the MaxProtocolErrors limit. Since the pop3connector was
    not able to deliver the mail, and does not know if the mail is safe to
    delete, it leaves the mail on the POP3 server.

    If there are 5 of these messages in your POP3 mailbox, then there will be 5
    "protocol errors" in the pop3connector's SMTP session, which hits the limit,
    and Exchange will end the session with a transient error (4xx). When this
    happens, the pop3connector recognizes that the error is transient, and will
    retry again at the next scheduled download period. But since those 5
    malformed messages are still in the POP3 mailbox, the same thing will
    continue to happen, with no "forward progress" being made.

    The workaround is to increase the â¬SMaxProtocolErrors⬝ property of the
    internal receive connector, which is called â¬S<COMPUTERNAME>\Windows SBS Fax
    Sharepoint Receive <COMPUTERNAME>⬝, and then restart the Exchange Transport
    service for the change to take effect (and youâ¬"ll have to restart the
    pop3connector service, too, since it depends on the Exchange Transport
    service). Unfortunately, you canâ¬"t set that property from the Exchange
    management GUI, so you have to do it from an (elevated) Exchange Powershell
    prompt. Here are the instructions:

    From an elevated Exchange Management Shell (Exchange Powershell window)
    (right click on â¬SStart-->Microsoft Exchange Server 2007-->Exchange
    Management Shell⬝ and then choose â¬SRun as administrator⬝) run the following
    Powershell commands:

    Set-ReceiveConnector -Identity ($Env:computername + "\Windows SBS Fax
    Sharepoint Receive " + $Env:computername) -MaxProtocolErrors 500
    Stop-Service pop3connector
    Restart-Service -force MSExchangeTransport
    Start-Service pop3connector

    That will increase the MaxProtocol errors (of the internal receive connector
    only) to match the pop3connectorâ¬"s max emails downloaded per session. Once
    you get 500 messages with malformed headers stacked up in the POP3 mailbox,
    though, youâ¬"ll still have to delete them manually.

    Q. Why might you be getting emails with malformed headers?
    A. It seems there are some buggy (perhaps deliberately) spam servers out
    there. Or it could be non-compliant mail software (like whatever software
    generated "Return-Path: <MAILER-DAEMON>" header that started this thread).


    Featured Post

    What Should I Do With This Threat Intelligence?

    Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

    Join & Write a Comment

    Suggested Solutions

    Set OWA language and time zone in Exchange for individuals, all users or per database.
    Easy CSR creation in Exchange 2007,2010 and 2013
    In this video we show how to create a Distribution Group in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >>…
    In this Micro Video tutorial you will learn the basics about Database Availability Groups and How to configure one using a live Exchange Server Environment. The video tutorial explains the basics of the Exchange server Database Availability grou…

    745 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    16 Experts available now in Live!

    Get 1:1 Help Now