GSmtp::Server Class Reference

An SMTP server class. More...

#include <gsmtpserver.h>

Inheritance diagram for GSmtp::Server:

GNet::MultiServer

List of all members.

Public Types

typedef std::list< GNet::AddressAddressList

Public Member Functions

 Server (MessageStore &store, const Secrets &client_secrets, const Secrets &server_secrets, Config server_config, std::string smtp_server_address, unsigned int smtp_connection_timeout, GSmtp::Client::Config client_config)
 Constructor.
virtual ~Server ()
 Destructor.
void report () const
 Generates helpful diagnostics after construction.
GNet::ServerPeernewPeer (GNet::Server::PeerInfo)
 From MultiServer.
G::Signal2< std::string,
std::string > & 
eventSignal ()
 Returns a signal that indicates that something has happened.

Classes

struct  Config
 A structure containing GSmtp::Server configuration parameters. More...


Detailed Description

An SMTP server class.

Definition at line 91 of file gsmtpserver.h.


Member Typedef Documentation

Reimplemented from GNet::MultiServer.

Definition at line 94 of file gsmtpserver.h.


Constructor & Destructor Documentation

GSmtp::Server::Server ( MessageStore store,
const Secrets client_secrets,
const Secrets server_secrets,
Config  server_config,
std::string  smtp_server_address,
unsigned int  smtp_connection_timeout,
GSmtp::Client::Config  client_config 
)

Constructor.

Listens on the given port number using INET_ANY if 'interfaces' is empty, or on specific interfaces otherwise.

If the 'smtp-server-address' parameter is given then all messages are forwarded immediately, using the specified client-side timeout values and client-side secrets.

If the 'smtp-server-address' parameter is empty then the timeout values are ignored.

The references are kept.

Definition at line 132 of file gsmtpserver.cpp.

GSmtp::Server::~Server (  )  [virtual]

Destructor.

Definition at line 152 of file gsmtpserver.cpp.

References GNet::MultiServer::serverCleanup().


Member Function Documentation

void GSmtp::Server::report (  )  const

Generates helpful diagnostics after construction.

Definition at line 163 of file gsmtpserver.cpp.

References GNet::MultiServer::serverReport().

GNet::ServerPeer * GSmtp::Server::newPeer ( GNet::Server::PeerInfo  peer_info  )  [virtual]

From MultiServer.

Implements GNet::MultiServer.

Definition at line 168 of file gsmtpserver.cpp.

References G_WARNING, GNet::Local::isLocal(), and GNet::Server::PeerInfo::m_address.

G::Signal2< std::string, std::string > & GSmtp::Server::eventSignal (  ) 

Returns a signal that indicates that something has happened.

Definition at line 158 of file gsmtpserver.cpp.

Referenced by GSmtp::ServerPeer::onDelete().


The documentation for this class was generated from the following files:

Generated on Fri Apr 18 15:56:14 2008 for E-MailRelay by  doxygen 1.5.5