E-MailRelay
Classes | Functions
GSmtp Namespace Reference

SMTP and message-store classes. More...

Classes

class  AdminServer
 A server class which implements the emailrelay administration interface. More...
 
class  AdminServerPeer
 A derivation of ServerPeer for the administration interface. More...
 
struct  AnonymousText
 Provides anodyne SMTP protocol text. More...
 
class  Client
 A class which acts as an SMTP client, extracting messages from a message store and forwarding them to a remote SMTP server. More...
 
class  ClientProtocol
 Implements the client-side SMTP protocol. More...
 
class  ClientProtocolReply
 A private implementation class used by ClientProtocol. More...
 
class  DirectoryReader
 Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim read permissions for reading a directory. More...
 
class  Envelope
 A structure containing the contents of an envelope file, with support for file reading, writing and copying. More...
 
class  ExecutableFilter
 A Filter class that runs an external helper program. More...
 
class  ExecutableVerifier
 A Verifier that runs an executable. More...
 
class  FactoryParser
 A simple static class to parse identifiers that are either a program path or a network address. More...
 
class  FileIterator
 A GSmtp::MessageStore::Iterator for GSmtp::FileStore. More...
 
class  FileReader
 Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim read permissions for reading a file. More...
 
class  FileStore
 A concrete implementation of the MessageStore interface dealing in paired flat files. More...
 
class  FileWriter
 Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim write permissions. More...
 
class  Filter
 An interface for processing a message file through a filter. More...
 
class  FilterFactory
 A factory interface for GSmtp::Filter message processors. More...
 
class  FilterFactoryFileStore
 A filter factory that holds a GSmtp::FileStore reference so that it can instantiate filters that operate on message files. More...
 
class  InternalVerifier
 The standard internal Verifier that accepts all mailbox names. More...
 
class  MessageId
 A somewhat opaque identifer for a MessageStore message. More...
 
class  MessageStore
 A class which allows SMTP messages to be stored and retrieved. More...
 
class  NetworkFilter
 A Filter class that passes the name of a message file to a remote network server. More...
 
class  NetworkVerifier
 A Verifier that talks to a remote address verifier over the network. More...
 
class  NewFile
 A concrete derived class implementing the GSmtp::NewMessage interface. More...
 
class  NewMessage
 An abstract class to allow the creation of a new message in the message store. More...
 
class  NullFilter
 A Filter class that does nothing. More...
 
class  ProtocolMessage
 An interface used by the ServerProtocol class to assemble and process an incoming message. More...
 
class  ProtocolMessageForward
 A concrete implementation of the ProtocolMessage interface that stores incoming messages in the message store and then immediately forwards them on to the downstream server. More...
 
class  ProtocolMessageStore
 A concrete implementation of the ProtocolMessage interface that stores incoming messages in the message store. More...
 
class  RequestClient
 A network client class that interacts with a remote server using a stateless line-based request/response protocol. More...
 
class  Server
 An SMTP server class. More...
 
class  ServerPeer
 Handles a connection from a remote SMTP client. More...
 
class  ServerProtocol
 Implements the SMTP server-side protocol. More...
 
class  ServerProtocolText
 A default implementation for the ServerProtocol::Text interface. More...
 
class  SpamClient
 A client class that interacts with a remote process using a protocol somewhat similar to the spamassassin spamc/spamd protocol. More...
 
class  SpamFilter
 A Filter class that passes the body of a message file to a remote process over the network and optionally stores the response back into the file. More...
 
class  StoredFile
 A concete derived class implementing the StoredMessage interface. More...
 
class  StoredMessage
 An abstract interface for messages which have come from the store. More...
 
class  StoredMessageStub
 A StoredMessage class that does nothing and can be used as a placeholder. More...
 
class  Verifier
 An asynchronous interface that verifies recipient 'to' addresses. More...
 
class  VerifierFactory
 A factory for addresss verifiers. More...
 
class  VerifierStatus
 A structure returned by GSmtp::Verifier to describe the status of a 'rcpt-to' or 'vrfy' recipient. More...
 

Functions

std::unique_ptr< StoredMessageoperator++ (std::shared_ptr< MessageStore::Iterator > &iter)
 

Detailed Description

SMTP and message-store classes.

The GSmtp namespace contains classes relating to the SMTP protocol and to e-mail storage.

Key classes are:

Function Documentation

◆ operator++()

std::unique_ptr< GSmtp::StoredMessage > GSmtp::operator++ ( std::shared_ptr< MessageStore::Iterator > &  iter)

Definition at line 25 of file gmessagestore.cpp.