Public Member Functions | Protected Member Functions | List of all members
GSmtp::ServerPeer Class Reference

Represents a connection from an SMTP client. More...

#include <gsmtpserver.h>

Inheritance diagram for GSmtp::ServerPeer:
GNet::BufferedServerPeer GSmtp::ServerProtocol::Sender GNet::ServerPeer GNet::EventHandler GNet::Connection GNet::SocketProtocolSink

Public Member Functions

 ServerPeer (GNet::Server::PeerInfo, Server &server, std::auto_ptr< ProtocolMessage > pmessage, const GAuth::Secrets &, const std::string &verifier_address, unsigned int verifier_timeout, std::auto_ptr< ServerProtocol::Text > ptext, ServerProtocol::Config)
 Constructor. More...
 
- Public Member Functions inherited from GNet::BufferedServerPeer
 BufferedServerPeer (Server::PeerInfo, const std::string &eol)
 Constructor. More...
 
virtual ~BufferedServerPeer ()
 Destructor. More...
 
- Public Member Functions inherited from GNet::ServerPeer
 ServerPeer (Server::PeerInfo)
 Constructor. More...
 
bool send (const std::string &data, std::string::size_type offset=0U)
 Sends data down the socket to the peer. More...
 
void doDelete (const std::string &=std::string())
 Does "onDelete(); delete this". More...
 
std::string logId () const
 Returns an identification string for logging purposes. More...
 
virtual std::pair< bool, AddresslocalAddress () const
 Returns the local address. More...
 
virtual std::pair< bool, AddresspeerAddress () const
 Returns the peer address. More...
 
virtual std::string peerCertificate () const
 Returns the peer's TLS certificate. More...
 
virtual void readEvent ()
 Final override from GNet::EventHandler. More...
 
virtual void writeEvent ()
 Final override from GNet::EventHandler. More...
 
virtual void onException (std::exception &)
 Final override from GNet::EventHandler. More...
 
void doDeleteThis (int)
 Does delete this. Should only be used by the GNet::Server class. More...
 
- Public Member Functions inherited from GNet::EventHandler
virtual ~EventHandler ()
 Destructor. More...
 
virtual void exceptionEvent ()
 Called for an exception event. More...
 
- Public Member Functions inherited from GNet::Connection
virtual ~Connection ()
 Destructor. More...
 
- Public Member Functions inherited from GNet::SocketProtocolSink
virtual ~SocketProtocolSink ()
 Destructor. More...
 

Protected Member Functions

virtual void onSendComplete ()
 Final override from GNet::BufferedServerPeer. More...
 
virtual void onDelete (const std::string &reason)
 Final override from GNet::ServerPeer. More...
 
virtual bool onReceive (const std::string &line)
 Final override from GNet::BufferedServerPeer. More...
 
virtual void onSecure (const std::string &)
 Final override from GNet::SocketProtocolSink. More...
 
- Protected Member Functions inherited from GNet::BufferedServerPeer
virtual void onData (const char *, ServerPeer::size_type)
 Final override from GNet::SocketProtocolSink. More...
 
- Protected Member Functions inherited from GNet::ServerPeer
virtual ~ServerPeer ()
 Destructor. More...
 
void sslAccept ()
 Waits for the peer to start a secure session. More...
 
StreamSocketsocket ()
 Returns a reference to the client-server connection socket. More...
 
Serverserver ()
 Returns a pointer to the associated server object. More...
 

Additional Inherited Members

- Public Types inherited from GNet::ServerPeer
typedef std::string::size_type size_type
 

Detailed Description

Represents a connection from an SMTP client.

Instances are created on the heap by Server (only).

See also
GSmtp::Server

Definition at line 54 of file gsmtpserver.h.

Constructor & Destructor Documentation

GSmtp::ServerPeer::ServerPeer ( GNet::Server::PeerInfo  peer_info,
Server server,
std::auto_ptr< ProtocolMessage pmessage,
const GAuth::Secrets server_secrets,
const std::string &  verifier_address,
unsigned int  verifier_timeout,
std::auto_ptr< ServerProtocol::Text ptext,
ServerProtocol::Config  protocol_config 
)

Member Function Documentation

void GSmtp::ServerPeer::onDelete ( const std::string &  reason)
protectedvirtual

Final override from GNet::ServerPeer.

Implements GNet::ServerPeer.

Definition at line 102 of file gsmtpserver.cpp.

References G_LOG_S.

bool GSmtp::ServerPeer::onReceive ( const std::string &  line)
protectedvirtual

Final override from GNet::BufferedServerPeer.

Implements GNet::BufferedServerPeer.

Definition at line 115 of file gsmtpserver.cpp.

void GSmtp::ServerPeer::onSecure ( const std::string &  certificate)
protectedvirtual

Final override from GNet::SocketProtocolSink.

Implements GNet::SocketProtocolSink.

Definition at line 122 of file gsmtpserver.cpp.

void GSmtp::ServerPeer::onSendComplete ( )
protectedvirtual

Final override from GNet::BufferedServerPeer.

Implements GNet::ServerPeer.

Definition at line 110 of file gsmtpserver.cpp.


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