#include <inetmail.h>
Inheritance diagram for PSMTP:
Public Types | |
HELO | |
EHLO | |
QUIT | |
HELP | |
NOOP | |
TURN | |
RSET | |
VRFY | |
EXPN | |
RCPT | |
SEND | |
SAML | |
SOML | |
DATA | |
AUTH | |
NumCommands | |
enum | Commands { HELO, EHLO, QUIT, HELP, NOOP, TURN, RSET, VRFY, EXPN, RCPT, MAIL, SEND, SAML, SOML, DATA, AUTH, NumCommands } |
Protected Member Functions | |
PSMTP () |
When acting as a client, the procedure is to make the connection to a remote server, then to send a message using the following procedure:
PSMTPClient mail("mailserver");
if (mail.IsOpen()) {
mail.BeginMessage("Me@here.com.au", "Fred@somwhere.com");
mail.Write(myMessage);
if (!mail.EndMessage())
PError << "Mail send failed." << endl;
}
else
PError << "Mail conection failed." << endl;
When acting as a server, a descendant class would be created to override at least the LookUpName() and HandleMessage() functions. Other functions may be overridden for further enhancement to the sockets capabilities, but these two will give a basic SMTP server functionality.
The server socket thread would continuously call the ProcessMessage() function until it returns PFalse. This will then call the appropriate virtual function on parsing the SMTP protocol.
enum PSMTP::Commands |
PSMTP::PSMTP | ( | ) | [protected] |