Microsoft KB Archive/302965

From BetaArchive Wiki
Knowledge Base


XIMS: IMAP SEARCH Command Not Finding Some Internet Header Information

Article ID: 302965

Article Last Modified on 2/20/2007



APPLIES TO

  • Microsoft Exchange 2000 Server Standard Edition



This article was previously published under Q302965

SYMPTOMS

The Internet Message Access Protocol (IMAP) allows a client to search for information contained in messages. The SEARCH command has the ability to search the Internet headers of a message. However, when it is searching for some header information, the IMAP server may fail to return the messages that contain the information. Here is a sample conversation to show the problem:

CLIENT:  0001 login USER1 USER1
RESPONSE: 0001 OK LOGIN completed

CLIENT: 0002 SELECT INBOX
RESPONSE: S: * 2 EXISTS
 * 1 RECENT
 * FLAGS (\Seen \Answered \Flagged \Deleted \Draft)
 * OK [PERMANENTFLAGS (\Seen \Answered \Flagged \Deleted \Draft)]
 * OK [UIDVALIDITY 49] UIDVALIDITY value.
 0002 OK [READ-WRITE] SELECT completed.

CLIENT: 0003 uid search header content-type text/html 
RESPONSE: * SEARCH
0003 OK SEARCH completed.
                    

The last response is incorrect. The correct response looks like the following:

RESPONSE: * SEARCH 1
0003 OK SEARCH completed
                    

To verify that the information exists in the message, you can use the FETCH command. The following is an example of the FETCH command that can show the data is in the message:

CLIENT: 0004 fetch 1 (body[header.fields (content-type)])
RESPONSE: 
* 1 FETCH (BODY[HEADER.FIELDS (content-type)] {51}
Content-Type: text/html;
        charset="iso-8859-1"

)
0004 OK FETCH completed.
                    

Notice that the string "text/html" is in the header. The FETCH command correctly retrieves the data, but the SEARCH command does not.

CAUSE

When IMAP asks the Internet E-mail engine (IMAIL) for the data, an incorrect flag is passed, which causes the Internet headers to be suppressed. When the search is performed, no data matches, so no message set is returned to the SEARCH command.

RESOLUTION

A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem. This fix may receive additional testing. Therefore, if you are not severely affected by this problem, Microsoft recommends that you wait for the next Microsoft Exchange 2000 Server service pack that contains this hotfix.

To resolve this problem immediately, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:

NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The typical support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this fix should have the following file attributes or later:

Component: IMAP4

File name Version
Eximap4.dll 6.0.4720.44
Store.exe 6.0.4720.44
Jcb.dll 6.0.4720.44
Exoledb.dll 6.0.4720.44
Excdo.dll 6.0.4720.44
Mdbsz.dll 6.0.4720.44


NOTE: Due to file dependencies, this update requires Microsoft Exchange Server 2000 Service Pack 1.

STATUS

Microsoft has confirmed that this is a problem in Microsoft Exchange 2000 Server.

Keywords: kbbug kbexchange2000presp2fix kbfix kbqfe KB302965