Dacons LLP Mailit for C/C++ Version 1.0.8

EmaiPOP3.h File Reference

POP3 functionality. More...

#include <EmaiTypes.h>
#include <EmaiErrors.h>
#include <EmaiMessage.h>
#include <EmaiProxy.h>

Go to the source code of this file.

Classes

struct  EmaiPop3CallbackData
 EmaiPop3CallbackData structure. More...
struct  EmaiMessageInfo
 Message info stored at the message info list. More...

Enumerations

enum  EmaiEnumPop3Selector { EmaiPop3SelectorNormal = 0, EmaiPop3SelectorReceiving, EmaiPop3SelectorServerError }
 Constants for selector member of the EmaiPop3CallbackData structure. More...
enum  EmaiEnumPop3OperationCode {
  EmaiPop3ConnectingToServer = 0, EmaiPop3ConnectedToServer, EmaiPop3Authenticating, EmaiPop3Authenticated,
  EmaiPop3GettingMessageList, EmaiPop3GotMessageList, EmaiPop3GettingMessageUIDLs, EmaiPop3GotMessageUIDLs,
  EmaiPop3RetrievingMessage, EmaiPop3MessageRetrieved, EmaiPop3DeletingMessage, EmaiPop3MessageDeleted,
  EmaiPop3SendingNOOP, EmaiPop3NOOPSent, EmaiPop3ClosingConnection, EmaiPop3ConnectionClosed
}
 Constants for operation codes for pop3 sessions. More...
enum  EmaiEnumPop3ReplyCode {
  EmaiPop3NotSupported = 0, EmaiPop3NoCode, EmaiPop3Unknown, EmaiPop3LoginDelay,
  EmaiPop3InUse, EmaiPop3System, EmaiPop3Auth
}
 Constants for reply codes for pop3 sessions. More...
enum  EmaiEnumPop3SSL { EmaiPop3UseSSLOption = 0x01 }
 Constants, used for session establishing function. More...
enum  EmaiEnumPop3Ports { EmaiDefaultPop3Port = 110, EmaiDefaultPop3SSLPort = 995 }
 Constants for default POP3 ports. More...
enum  EmaiEnumPop3AuthSelector {
  EmaiPOP3AuthAutomatic, EmaiPOP3AuthLoginCommand, EmaiPOP3AuthApop, EmaiPOP3AuthLogin,
  EmaiPOP3AuthPlain, EmaiPOP3AuthCramMD5, EmaiPOP3AuthNTLM
}
 Constants, Authentication modes for EmaiPop3Authenticate function. More...
enum  EmaiEnumPop3RetrieveAttribute { EmaiRetrieveRFC822Header = 1 }
 Retrieve type for EmaiPop3RetrieveMessage function. More...
enum  EmaiEnumPop3CreateMessageInfoFlags { EmaiCreateFileIfNotExists = 1 }
 Constants for EmaiPop3CreateMessageInfoList functions. More...
enum  EmaiEnumPop3MessageInfoListGetCountFlags { EmaiMessagesForDownload = 0, EmaiMessagesForDeletion, EmaiMessagesOnServer }
 Constants for EmaiPop3MessageInfoListEvaluateSubList, EmaiPop3MessageInfoListGetCount and EmaiPop3MessageInfoListGetInfo functions. More...
enum  EmaiEnumPop3MessageInfoMarkMessageReceivedFlags { EmaiMessageIndexInList = 0, EmaiMessageIndexOnServer }
 Constants for the EmaiPop3MessageInfoMarkMessageReceived function. More...

Functions

 EmaiPop3SessionCreate (EmaiPop3Session *outSession, EmaiPop3StatusCallback inStatusCallback, void *inUserData, EmaiUint32 inTimeout, EmaiOptions inOptions)
 Creates POP3 session object.
 EmaiPop3Connect (EmaiPop3Session inSession, EmaiConstUniCharPtr inMailServer, short inPort, EmaiOptions inOptions)
 Connects POP3 session object to the specified mail server.
 EmaiPop3ConnectEx (EmaiPop3Session inSession, EmaiConstUniCharPtr inMailServer, short inPort, const EmaiProxyInfo *inProxyInfo, void *inUserData, EmaiOptions inOptions)
 Connects POP3 session object to the specified mail server.
 EmaiPop3Disconnect (EmaiPop3Session inSession, EmaiOptions inOptions)
 Disconnects POP3 session object from mail server.
 EmaiPop3Authenticate (EmaiPop3Session inSession, EmaiConstUniCharPtr inAccount, EmaiConstUniCharPtr inPassword, EmaiOptions inOptions)
 Authenticates the POP3 session.
 EmaiPop3RetrieveMessageList (EmaiPop3Session inSession, EmaiPop3MessageInfoList inMessageInfoList, EmaiOptions inOptions)
 Retrieves the list of messages, stored on the server. This function internally calls EmaiPop3MessageInfoListEvaluateSubList with EmaiMessagesForDownload option, so after calling EmaiPop3RetrieveMessageList you can skip evaluating of download message list and start message downloading immediately.
 EmaiPop3RetrieveMessage (EmaiPop3Session inSession, EmaiMessage *outMessage, EmaiUint32 inMessageNumber, EmaiOptions inOptions)
 Retrieves the message from the server.
 EmaiPop3DeleteMessage (EmaiPop3Session inSession, EmaiUint32 inMessageNumber, EmaiOptions inOptions)
 Marks message on server as "deleted".
 EmaiPop3Reset (EmaiPop3Session inSession, EmaiOptions inOptions)
 Unmarks all messages as "deleted" on the server.
 EmaiPop3Cancel (EmaiPop3Session inSession, EmaiOptions inOptions)
 Marks POP3 session to be cancelled ASAP.
 EmaiPop3Noop (EmaiPop3Session inSession, EmaiOptions inOptions)
 Sens NOOP command to the POP3 server. Used to avoid timout disconnection, during inactivity period.
 EmaiPop3MessageInfoListCreateFromFile (EmaiPop3MessageInfoList *outMessageInfoList, EmaiConstUniCharPtr inFullFilePath, EmaiOptions inOptions)
 Creates message info list from the specified file.
 EmaiPop3MessageInfoListCreateFromData (EmaiPop3MessageInfoList *outMessageInfoList, const void *inMessageListData, EmaiUint32 inMessageListDataSize, EmaiOptions inOptions)
 Creates message info list from the input data.
 EmaiPop3MessageInfoListGetHistoryData (EmaiPop3MessageInfoList inMessageInfoList, const void **outData, EmaiUint32 &outDataSize, EmaiOptions inOptions)
 Retrieves message info list data.
 EmaiPop3MessageInfoListResetHistory (EmaiPop3MessageInfoList inMessageInfoList, EmaiConstUniCharPtr inAccount, EmaiConstUniCharPtr inServer, EmaiOptions inOptions)
 Reset message info list.
 EmaiPop3MessageInfoListEvaluateSubList (EmaiPop3MessageInfoList inMessageInfoList, EmaiUint32 inDays, EmaiOptions inOptions)
 Calculates the sublist of the messages, depending of the inOptions value. For EmaiMessagesForDownload value this function evaluates message list which wasn't downloaded from the server yet. For EmaiMessagesForDeletion value this function evaluates outdated messages which were received more that 'inDays' days ago.
 EmaiPop3MessageInfoListGetCount (EmaiPop3MessageInfoList inMessageInfoList, EmaiUint32 *outCount, EmaiOptions inOptions)
 Returns the number of information records, stored at the message info list.
 EmaiPop3MessageInfoListGetInfo (EmaiPop3MessageInfoList inMessageInfoList, EmaiUint32 inMessageIndex, EmaiMessageInfo *outInfo, EmaiOptions inOptions)
 Retrives information record stored at the particular index of the message info list.
 EmaiPop3MessageInfoMarkMessageReceived (EmaiPop3MessageInfoList inMessageInfoList, EmaiUint32 inMessageIndex, EmaiOptions inOptions)
 Marks the message at the specified index as "received", and saves it's info in the message history. This function will fail, if current sublist is not EmaiMessagesForDownload.


Detailed Description

POP3 functionality.

Version:
Mailit for C/C++ 1.0
Author:
(C) 2008-2010 Dacons LLP.

Definition in file EmaiPOP3.h.


Enumeration Type Documentation

Constants, Authentication modes for EmaiPop3Authenticate function.

See also:
EmaiPop3Authenticate

Emai::Pop3Session::Authenticate

Enumerator:
EmaiPOP3AuthAutomatic  Automatically tries all available mechanisms USER/PASS authentification
EmaiPOP3AuthLoginCommand  APOP authentification
EmaiPOP3AuthApop  LOGIN authentification
EmaiPOP3AuthLogin  PLAIN authentification
EmaiPOP3AuthPlain  CRAM-MD5 authentification
EmaiPOP3AuthCramMD5  NTLM authentification
EmaiPOP3AuthNTLM 

Definition at line 254 of file EmaiPOP3.h.

00255 {
00257     EmaiPOP3AuthAutomatic,
00258 
00260     EmaiPOP3AuthLoginCommand,
00261 
00263     EmaiPOP3AuthApop,
00264 
00266     EmaiPOP3AuthLogin,
00267 
00269     EmaiPOP3AuthPlain,
00270 
00272     EmaiPOP3AuthCramMD5,
00273 
00275     EmaiPOP3AuthNTLM
00276 };

Constants for EmaiPop3CreateMessageInfoList functions.

See also:
EmaiPop3MessageInfoListCreateFromFile

Emai::MessageInfoList::MessageInfoList

Enumerator:
EmaiCreateFileIfNotExists 

Definition at line 438 of file EmaiPOP3.h.

00439 {
00440     EmaiCreateFileIfNotExists               = 1
00441 };

Constants for EmaiPop3MessageInfoListEvaluateSubList, EmaiPop3MessageInfoListGetCount and EmaiPop3MessageInfoListGetInfo functions.

See also:
EmaiPop3MessageInfoListGetCount

Emai::MessageInfoList::GetCount

EmaiPop3MessageInfoListGetInfo

Emai::MessageInfoList::GetInfo

EmaiPop3MessageInfoListEvaluateSubList

Emai::MessageInfoList::EvaluateSublist

Enumerator:
EmaiMessagesForDownload  Get infomation about messages which are not received yet
EmaiMessagesForDeletion  Get infomation about messages which should be deleted
EmaiMessagesOnServer  Get infomation about messages which are currently on server

Definition at line 543 of file EmaiPOP3.h.

00544 {
00545     EmaiMessagesForDownload     = 0,    
00547     EmaiMessagesForDeletion,            
00549     EmaiMessagesOnServer                
00551 };

Constants for the EmaiPop3MessageInfoMarkMessageReceived function.

See also:
EmaiPop3MessageInfoMarkMessageReceived

Emai::MessageInfoList::MarkMessageReceived

Enumerator:
EmaiMessageIndexInList  inMessageIndex parameter is zero-based index in EmaiMessagesForDownload sublist
EmaiMessageIndexOnServer  inMessageIndex is one-based message number on pop3 server

Definition at line 620 of file EmaiPOP3.h.

00621 {
00622     EmaiMessageIndexInList      = 0,    
00624     EmaiMessageIndexOnServer            
00626 };

Constants for operation codes for pop3 sessions.

See also:
EmaiPop3CallbackData
Enumerator:
EmaiPop3ConnectingToServer 
EmaiPop3ConnectedToServer 
EmaiPop3Authenticating 
EmaiPop3Authenticated 
EmaiPop3GettingMessageList 
EmaiPop3GotMessageList 
EmaiPop3GettingMessageUIDLs 
EmaiPop3GotMessageUIDLs 
EmaiPop3RetrievingMessage 
EmaiPop3MessageRetrieved 
EmaiPop3DeletingMessage 
EmaiPop3MessageDeleted 
EmaiPop3SendingNOOP 
EmaiPop3NOOPSent 
EmaiPop3ClosingConnection 
EmaiPop3ConnectionClosed 

Definition at line 55 of file EmaiPOP3.h.

Constants for default POP3 ports.

See also:
EmaiPop3Connect

Emai::Pop3Session::Connect

Enumerator:
EmaiDefaultPop3Port  Default POP3 port
EmaiDefaultPop3SSLPort  Default SSL POP3 port

Definition at line 179 of file EmaiPOP3.h.

00180 {
00181     EmaiDefaultPop3Port     = 110,  
00182     EmaiDefaultPop3SSLPort  = 995   
00183 };

Constants for reply codes for pop3 sessions.

See also:
EmaiPop3CallbackData
Enumerator:
EmaiPop3NotSupported  Reply codes not supported by server
EmaiPop3NoCode  Reply code is not specified by server
EmaiPop3Unknown  Reply code is not recognized by library
EmaiPop3LoginDelay  The login delay period is not expired yet
EmaiPop3InUse  Maildrop is currently in use (probably by another POP3 client)
EmaiPop3System  Failure due to system error
EmaiPop3Auth  Authentication failed for some reason (incorrect password or unknown user name)

Definition at line 80 of file EmaiPOP3.h.

00081 {
00082     EmaiPop3NotSupported            = 0,
00083     EmaiPop3NoCode,                     
00084     EmaiPop3Unknown,                    
00085     EmaiPop3LoginDelay,                 
00086     EmaiPop3InUse,                      
00088     EmaiPop3System,                     
00089     EmaiPop3Auth                        
00091 };

Retrieve type for EmaiPop3RetrieveMessage function.

See also:
Emai::Pop3Session::RetrieveMessage

EmaiPop3RetrieveMessage

Enumerator:
EmaiRetrieveRFC822Header  Retrieve only message header

Definition at line 336 of file EmaiPOP3.h.

00337 {
00339     EmaiRetrieveRFC822Header = 1
00340 };

Constants for selector member of the EmaiPop3CallbackData structure.

See also:
EmaiPop3CallbackData

Emai::Pop3StatusCallback

Enumerator:
EmaiPop3SelectorNormal  Normal
EmaiPop3SelectorReceiving  Receiving
EmaiPop3SelectorServerError  ServerError

Definition at line 43 of file EmaiPOP3.h.

Constants, used for session establishing function.

See also:
EmaiPop3SessionCreate

Emai::Pop3Session::Pop3Session()

Enumerator:
EmaiPop3UseSSLOption  If this flag is used, this session

Definition at line 144 of file EmaiPOP3.h.

00145 {
00146     
00147     EmaiPop3UseSSLOption    = 0x01, 
00148                                 /* will connect only to secured SMTP servers.*/
00149 };


Function Documentation

EmaiPop3Authenticate ( EmaiPop3Session  inSession,
EmaiConstUniCharPtr  inAccount,
EmaiConstUniCharPtr  inPassword,
EmaiOptions  inOptions 
)

Authenticates the POP3 session.

Parameters:
inSession - session object, to be authenticated
inAccount - pointer to null-teminated string, which conatins account name for authentication
inPassword - pointer to null-teminated string, which contains password for authentication
inOptions - preffered authentication method, i.e. EmaiPOP3AuthAutomatic, EmaiPOP3AuthLogin, etc.
See also:
EmaiEnumPop3AuthSelector

Emai::Pop3Session::Authenticate

Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Authenticate().

EmaiPop3Cancel ( EmaiPop3Session  inSession,
EmaiOptions  inOptions 
)

Marks POP3 session to be cancelled ASAP.

Parameters:
inSession - session object, to be used
inOptions - not used in current version, use EmaiNullOptions
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Cancel().

EmaiPop3Connect ( EmaiPop3Session  inSession,
EmaiConstUniCharPtr  inMailServer,
short  inPort,
EmaiOptions  inOptions 
)

Connects POP3 session object to the specified mail server.

Parameters:
inSession - session object to be connected
inMailServer - pointer to null-teminated string which specifies name or IP address of POP3 server
inPort - port number of POP3 server
inOptions - not used in current version, use EmaiNullOptions
See also:
EmaiEnumPop3Ports

Emai::Pop3Session::Connect

Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Connect().

EmaiPop3ConnectEx ( EmaiPop3Session  inSession,
EmaiConstUniCharPtr  inMailServer,
short  inPort,
const EmaiProxyInfo inProxyInfo,
void *  inUserData,
EmaiOptions  inOptions 
)

Connects POP3 session object to the specified mail server.

Parameters:
inSession - session object to be connected
inMailServer - pointer to null-teminated string which specifies name or IP address of POP3 server
inPort - port number of POP3 server
inProxyInfo - proxy server information struct
inUserData - user data specified parameter, use NULL
inOptions - not used in current version, use EmaiNullOptions
See also:
EmaiEnumPop3Ports

Emai::Pop3Session::ConnectEx

Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::ConnectEx().

EmaiPop3DeleteMessage ( EmaiPop3Session  inSession,
EmaiUint32  inMessageNumber,
EmaiOptions  inOptions 
)

Marks message on server as "deleted".

Parameters:
inSession - session object, to be used
inMessageNumber - message number on the server
inOptions - not used in current version, use EmaiNullOptions
See also:
Emai::Pop3Session::DeleteMessage
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::DeleteMessage().

EmaiPop3Disconnect ( EmaiPop3Session  inSession,
EmaiOptions  inOptions 
)

Disconnects POP3 session object from mail server.

Parameters:
inSession - session object to be disconnected
inOptions - not used in current version, use EmaiNullOptions
See also:
Emai::Pop3Session::Disconnect
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Disconnect().

EmaiPop3MessageInfoListCreateFromData ( EmaiPop3MessageInfoList *  outMessageInfoList,
const void *  inMessageListData,
EmaiUint32  inMessageListDataSize,
EmaiOptions  inOptions 
)

Creates message info list from the input data.

Parameters:
outMessageInfoList - on exit contains message info list object
inMessageListData - pointer to the message data, where info list is stored
inMessageListDataSize - size of the inMessageListData
inOptions - not used in current version, use EmaiNullOptions
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::MessageInfoList().

EmaiPop3MessageInfoListCreateFromFile ( EmaiPop3MessageInfoList *  outMessageInfoList,
EmaiConstUniCharPtr  inFullFilePath,
EmaiOptions  inOptions 
)

Creates message info list from the specified file.

Parameters:
outMessageInfoList - on exit contains message info list object
inFullFilePath - full path to the file where info list is stored, relative file paths are not accepted by the function
inOptions - use EmaiCreateFileIfNotExists if you want to create file, use EmaiNullOptions otherwise
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::MessageInfoList().

EmaiPop3MessageInfoListEvaluateSubList ( EmaiPop3MessageInfoList  inMessageInfoList,
EmaiUint32  inDays,
EmaiOptions  inOptions 
)

Calculates the sublist of the messages, depending of the inOptions value. For EmaiMessagesForDownload value this function evaluates message list which wasn't downloaded from the server yet. For EmaiMessagesForDeletion value this function evaluates outdated messages which were received more that 'inDays' days ago.

Parameters:
inMessageInfoList - message info list object to be examined
inDays - number of days
inOptions - EmaiMessagesForDownload or EmaiMessagesForDeletion or EmaiMessagesOnServer (See EmaiEnumPop3MessageInfoListGetCountFlags)
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::EvaluateSublist().

EmaiPop3MessageInfoListGetCount ( EmaiPop3MessageInfoList  inMessageInfoList,
EmaiUint32 *  outCount,
EmaiOptions  inOptions 
)

Returns the number of information records, stored at the message info list.

Parameters:
inMessageInfoList - message info list object to be examined
outCount - on exit contains the number of information records, stored at the message info list
inOptions - EmaiMessagesForDownload or EmaiMessagesForDeletion or EmaiMessagesOnServer (See EmaiEnumPop3MessageInfoListGetCountFlags)
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::GetCount().

EmaiPop3MessageInfoListGetHistoryData ( EmaiPop3MessageInfoList  inMessageInfoList,
const void **  outData,
EmaiUint32 &  outDataSize,
EmaiOptions  inOptions 
)

Retrieves message info list data.

Parameters:
intMessageInfoList - message info list object to be examined
outData - on exit will be filled with history data
outDataSize - on exit will be filled with size of history data
inOptions - not used in current version, use EmaiNullOptions
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::GetMessageInfoListData().

EmaiPop3MessageInfoListGetInfo ( EmaiPop3MessageInfoList  inMessageInfoList,
EmaiUint32  inMessageIndex,
EmaiMessageInfo outInfo,
EmaiOptions  inOptions 
)

Retrives information record stored at the particular index of the message info list.

Parameters:
inMessageInfoList - message info list object, to be examined
inMessageIndex - zero-based index of the record
outInfo - pointer to the EmaiMessageInfo structure, which is filled with message information, on successful function exit
inOptions - EmaiMessagesForDownload or EmaiMessagesForDeletion or EmaiMessagesOnServer (See EmaiEnumPop3MessageInfoListGetCountFlags)
See also:
EmaiMessageInfo
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::GetInfo().

EmaiPop3MessageInfoListResetHistory ( EmaiPop3MessageInfoList  inMessageInfoList,
EmaiConstUniCharPtr  inAccount,
EmaiConstUniCharPtr  inServer,
EmaiOptions  inOptions 
)

Reset message info list.

Parameters:
intMessageInfoList - message info list object to be examined
inAccount - reset account string
inServer - reset server string
inOptions - not used in current version, use EmaiNullOptions
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::ResetInfoList().

EmaiPop3MessageInfoMarkMessageReceived ( EmaiPop3MessageInfoList  inMessageInfoList,
EmaiUint32  inMessageIndex,
EmaiOptions  inOptions 
)

Marks the message at the specified index as "received", and saves it's info in the message history. This function will fail, if current sublist is not EmaiMessagesForDownload.

Parameters:
inMessageInfoList - message info list object to be modified
inMessageIndex - index of the message, actual interpretation of this parameter depends of the inOptions value, for more information see options value description
inOptions - EmaiMessageIndexInList or EmaiMessageIndexOnServer
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::MessageInfoList::MarkMessageReceived().

EmaiPop3Noop ( EmaiPop3Session  inSession,
EmaiOptions  inOptions 
)

Sens NOOP command to the POP3 server. Used to avoid timout disconnection, during inactivity period.

Parameters:
inSession - session object, to be used
inOptions - not used in current version, use EmaiNullOptions
See also:
Emai::Pop3Session::Noop
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Noop().

EmaiPop3Reset ( EmaiPop3Session  inSession,
EmaiOptions  inOptions 
)

Unmarks all messages as "deleted" on the server.

Parameters:
inSession - session object
inOptions - not used in current version, use EmaiNullOptions
See also:
Emai::Pop3Session::Reset
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Reset().

EmaiPop3RetrieveMessage ( EmaiPop3Session  inSession,
EmaiMessage outMessage,
EmaiUint32  inMessageNumber,
EmaiOptions  inOptions 
)

Retrieves the message from the server.

Parameters:
inSession - session object, to be used
outMessage - on exit contains message object
inMessageNumber - one-based message number on server (See EmaiMessageInfo); messageNumber member of EmaiMessageInfo structure contains the number
inOptions - EmaiRetrieveRFC822Header for retrieving message header only, EmaiNullOptions retrives full message
See also:
Emai::Pop3Session::RetrieveMessage

EmaiMessageInfo

Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::RetrieveMessage().

EmaiPop3RetrieveMessageList ( EmaiPop3Session  inSession,
EmaiPop3MessageInfoList  inMessageInfoList,
EmaiOptions  inOptions 
)

Retrieves the list of messages, stored on the server. This function internally calls EmaiPop3MessageInfoListEvaluateSubList with EmaiMessagesForDownload option, so after calling EmaiPop3RetrieveMessageList you can skip evaluating of download message list and start message downloading immediately.

Parameters:
inSession - session object, to be used
inMessageInfoList - message list created using EmaiPop3MessageInfoListCreateFromFile or EmaiPop3MessageInfoListCreateFromData functions; initially this list contains messages which were received in previous pop3 sessions. It is up to user to pass correct list which contains message history for the e-mail account currenly user is working with.
inOptions - not used in current version, use EmaiNullOptions
See also:
EmaiPop3MessageInfoListCreateFromFile

EmaiPop3MessageInfoListCreateFromData

Emai::Pop3Session::RetrieveMessageList

Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::RetrieveMessageList().

EmaiPop3SessionCreate ( EmaiPop3Session outSession,
EmaiPop3StatusCallback  inStatusCallback,
void *  inUserData,
EmaiUint32  inTimeout,
EmaiOptions  inOptions 
)

Creates POP3 session object.

Parameters:
outSession - on exit contains session object
inStatusCallback - status callback
inUserData - user data which is passed in status callback as inUserData parameter
inTimeout - timeout value in seconds
inOptions - use EmaiUseSSLOption to create secured SSL session or EmaiNullOptions otherwise
Returns:
Result code (See EmaiEnumResultCodes)

Referenced by Emai::Pop3Session::Pop3Session().