Thanks to all those who helped. It turned out that there was some extra
non-visible line end character after each line in every message. The Cyrus
IMAP server must have been stripping these off when it delivered messages to
the client, but the Courier IMAP server isn't. The extra line end character
was being interpretted by IMAP clients as a newline. Once I stripped the
trailing whitespace from each line and rewrote the files with just a single
newline character after each line, the problem went away.
I am trying to move my Cyrus mailboxes to a Maildir format. It appears
that the directory structure, filenames and permissions are correct
because I can open Outlook Express on the server and get the correct
folder structure. All of the messages also appear in the proper folder.
The problem occurs when trying to view a message. Outlook appears to
only treat the very first mail header as the complete mail header. The
rest of the headers show up in the message body.
As I understand you, you're saying that OE recognizes that there are
several messages in the mailbox instead of one big message. But other
than the first message, it displays each message as if it had no headers,
and the headers which are present are treated as part of the body.
I would take a good look at the first line of these messages. Is the
first line a "From " line with no colon? That line shouldn't be present.