21 #ifndef G_POP_SERVER_H
22 #define G_POP_SERVER_H
59 virtual bool protocolSend(
const std::string & line ,
size_t ) ;
63 virtual void onDelete(
const std::string & ) ;
66 virtual bool onReceive(
const std::string & ) ;
69 virtual void onSecure(
const std::string & ) ;
84 void processLine(
const std::string & line ) ;
85 static const std::string & crlf() ;
89 std::auto_ptr<ServerProtocol::Text> m_ptext ;
99 G_EXCEPTION( Overflow ,
"too many interface addresses" ) ;
124 void operator=(
const Server & ) ;
128 bool m_allow_remote ;
An abstract base class for the GNet::Server's connection to a remote client.
A simple interface to a store of secrets as used in authentication.
Implements the POP server-side protocol.
virtual bool onReceive(const std::string &)
Final override from GNet::BufferedServerPeer.
std::list< std::string > Strings
A std::list of std::strings.
The Address class encapsulates an IP transport address.
void report() const
Generates helpful diagnostics after construction.
virtual void onSendComplete()
Final override from GNet::BufferedServerPeer.
A structure containing GPop::Server configuration parameters.
An interface used by ServerProtocol to send protocol replies.
An interface used by ServerProtocol to enable TLS.
virtual bool protocolSend(const std::string &line, size_t)
Final override from GPop::ServerProtocol::Sender.
virtual bool securityEnabled() const
Final override from GPop::ServerProtocol::Security.
An interface used by ServerProtocol to provide response text strings.
virtual void securityStart()
Final override from GPop::ServerProtocol::Security.
virtual ~Server()
Destructor.
A structure containing configuration parameters for ServerProtocol. NOT USED.
#define G_EXCEPTION(class_name, description)
define as a function rather than a type if optimising for size
GNet::ServerPeer * newPeer(GNet::Server::PeerInfo)
From MultiServer.
ServerPeer(GNet::Server::PeerInfo, Server &, Store &, const Secrets &, std::auto_ptr< ServerProtocol::Text > ptext, ServerProtocol::Config)
Constructor.
virtual void onSecure(const std::string &)
Final override from GNet::SocketProtocolSink.
Represents a connection from a POP client.
A server that listens on more than one interface using a facade pattern to multiple Server instances...
A ServerPeer that does line-buffering on input.
A structure used in GNet::Server::newPeer().
Server(Store &store, const Secrets &, Config)
Constructor. The 'secrets' reference is kept.
virtual void onDelete(const std::string &)
Final override from GNet::ServerPeer.