Hi,

I am developing an email synchronisation client for S60 phones. I created an IMAP4 mailbox (name example) of my google mail account on my S60 phone.

Then I wrote code to check whether I could access the mailbox programmatically.

Code:
void CSyncEmails::myReadEmailArrayL( TMsvId aFolderId )
	{
	TMsvSelectionOrdering sort;
	sort.SetShowInvisibleEntries(ETrue);
		
	CMsvEntry* inboxContext=CMsvEntry::NewL(*iSession,aFolderId,sort); 
	CleanupStack::PushL(inboxContext);
	
	CMsvEntrySelection* entries = inboxContext->ChildrenL();
	CleanupStack::PushL( entries );
	TInt entCnt = entries->Count();
	
	for (TInt i=0; i<entries->Count(); i++)
		{
		TMsvId entryID = entries->At(i);
		CMsvEntry* entry = iSession->GetEntryL(entryID);
		CleanupStack::PushL(entry);		
		TMsvEntry tEntry =  entry->Entry();
                }
        }
The problem now is that entries ( pointer to CMsvEntrySelection object ) has two elements for the example mailbox. When I examine the corresponding tEntry.iMtm attribute of the two example mailbox elements the first one has the value KUidMsgTypeIMAP4 which is expected whereas the second one has the value KUidMsgTypeSMTP which I don't understand.

Please clarify.

Regards,
Arvind