- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1 2 3 4]

►N G | Low-level classes
C Arg | A class which holds a represention of the argc/argv command line array, and supports simple command-line parsing
C Base64 | A base64 codec class
C Cleanup | An interface for registering cleanup functions which are called when the process terminates abnormally
C CleanupImp | A private implementation class used by G::Cleanup
►C Convert | A static class which provides string encoding conversion functions
C ThrowOnError | Holds error context information for when convert() may fail
C utf8 | A string wrapper that indicates UTF-8 encoding
C Counter | An instance counter to help with leak testing
C CounterImp | A private implementation class used by the G::Counter<> class template
C Daemon | A class for deamonising the calling process
►C Date | A date (dd/mm/yyyy) class
C LocalTime | An overload discriminator class for Date constructors
C DateTime | A low-level static class used by Date and Time
C Directory | An encapsulation of a file system directory which allows for iterating through the set of contained files
C DirectoryIterator | A Directory iterator
C DirectoryIteratorImp | A pimple-pattern implementation class for DirectoryIterator
C DirectoryList | A Directory iterator that does all file i/o in one go
C Environment | A static class to wrap getenv() and putenv()
C Exception | A general-purpose exception class derived from std::exception and containing a std::string
C Executable | A structure representing an external program, holding a path and a set of arguments
►C File | A simple static class for dealing with files
C NoThrow | An overload discriminator class for File methods
C FileSystem | Provides information about the local operating system's file system conventions
►C GetOpt | A command line switch parser
C Level | Used by G::GetOpt for extra type safety
C SwitchSpec | A private implementation structure used by G::GetOpt
C Identity | A very low-level interface to getpwnam() and the get/set/e/uid/gid functions
C IdentityUser | A convenience class which, when used as a private base, can improve readability when calling Identity 'set' methods
C limits | A scoping structure for a set of buffer sizes
►C Log | A static class for doing iostream-based logging
C Line | A class for adding line number information to the Log output
C LogOutput | Controls and implements low-level logging output, as used by the Log interface
►C Md5 | MD5 class
C Masked | An overload discriminator for G::Md5::hmac()
►C NewProcess | A static interface for creating new processes
C ChildProcess | Represents the state of a child process
C ChildProcessImp | A private implementation class used by G::NewProcess
C noncopyable | A noncopyable base class (a la boost)
►C Pam | A thin abstract interface to the system PAM library
C Error | An exception class used by G::Pam
C Item | A structure used by G::Pam to hold conversation items
C PamImp | A pimple-pattern implementation class for Pam
C Path | A Path object represents a file system path
C PidFile | A class for creating pid files
C Pipe | A private implementation class used by G::NewProcess
►C Process | A static interface for doing things with processes
C Id | Process-id class
C IdImp | A private implementation class used by G::Process
C NoThrow | An overload discriminator for Process
►C Umask | Used to temporarily modify the process umask
C UmaskImp | A private implementation class used by G::Process::Umask
C Root | A class which acquires the process's special privileges on construction and releases them on destruction
C Setter | A class to manage a boolean flag while in scope
C Signal0 | Part of the slot/signal system
C Signal1 | Part of the slot/signal system
C Signal2 | Part of the slot/signal system
C Signal3 | Part of the slot/signal system
C SignalImp | Part of the slot/signal system
C SignalSafe | An empty structure that is used to indicate a signal-safe, reentrant implementation
C Slot0 | Part of the slot/signal system
C Slot1 | Part of the slot/signal system
C Slot2 | Part of the slot/signal system
C Slot3 | Part of the slot/signal system
C SlotBase | Part of the slot/signal system
C SlotImp0 | Part of the slot/signal system
C SlotImp1 | Part of the slot/signal system
C SlotImp2 | Part of the slot/signal system
C SlotImp3 | Part of the slot/signal system
C SlotOp0 | Part of the slot/signal system
C SlotOp1 | Part of the slot/signal system
C SlotOp2 | Part of the slot/signal system
C SlotOp3 | Part of the slot/signal system
C StateMachine | A finite state machine class template
C Str | A static class which provides string helper functions
C StringMapReader | An adaptor for reading a const StringMap with at()
C Test | A static interface for enabling test features at run-time
►C Time | A simple time-of-day (hh/mm/ss) class
C LocalTime | An overload discriminator class for Time constructors
C Xtext | An xtext codec class
►N GAuth | SASL authentication classes
C PamImp | A private implementation of the G::Pam interface used by GAuth::SaslServerPamImp, which is itself a private implementation class used by GAuth::SaslServerPam
►C SaslClient | A class for implementing the client-side SASL challenge/response concept
C Secrets | An interface used by GAuth::SaslClient to obtain authentication secrets
C SaslClientImp | A private pimple-pattern implementation class used by GAuth::SaslClient
►C SaslServer | A class for implementing the server-side SASL challenge/response concept
C Secrets | An interface used by GAuth::SaslServer to obtain authentication secrets
C SaslServerBasic | An implementation of the SaslServer interface
C SaslServerBasicImp | A private pimple-pattern implementation class used by GAuth::SaslServerBasic
C SaslServerFactory | Provides a factory function for SaslServer instances
C SaslServerPam | An implementation of the SaslServer interface using PAM as the authentication mechanism
C SaslServerPamImp | A private implementation class used by GAuth::SaslServerPam
C Secrets | A simple interface to a store of secrets as used in authentication
C SecretsFile | A implementation class used by GAuth::Secrets
C Valid | A trivial mix-in interface containing a valid() method
►N GNet | Network classes
C AbstractTimer | A timer base class that calls a pure virtual method on expiry
C AcceptPair | A class which is used to return a new()ed socket to calling code, together with associated information, and with auto_ptr style transfer of ownership
►C Address | Encapsulates an IP transport address
C Broadcast | An overload discriminator class for GNet::Address
C Localhost | An overload discriminator class for GNet::Address
►C AddressImp | A pimple-pattern implementation class for GNet::Address
C Sockaddr | Used by GNet::AddressImp to cast between sockaddr and sockaddr_in
C AddressStorage | A helper class for calling getsockname() and getpeername() and hiding the definition of sockaddr_storage
C AddressStorageImp | A pimple-pattern implementation class for GNet::AddressStorage
C BufferedServerPeer | A ServerPeer that does line-buffering on input
C Client | A HeapClient class that adds slot/signal signalling, connection/response timeouts, and input line buffering
C ClientPtr | A smart pointer class for GNet::HeapClient
C ClientResolver | A resolver class which calls SimpleClient::resolveCon() when done
C Connection | An interface which provides address information for a network connection
►C ConnectionLookup | A class for getting more information about a connection from the operating system
C Connection | Holds information provided by GNet::ConnectionLookup::find()
C DatagramSocket | A derivation of Socket for a connectionless datagram socket
C Descriptor | A network file descriptor
C EventHandler | A base class for classes that handle asynchronous socket events
C EventHandlerList | A class which can be used in the implemention of classes derived from GNet::EventLoop
C EventLoop | An abstract base class for a singleton that keeps track of open sockets and their associated handlers
C FdSet | An "fd_set" wrapper type
C HeapClient | A SimpleClient class for client objects that manage their own lifetime on the heap
C LineBuffer | A class which does line buffering
C LineBufferIterator | An iterator class for GNet::LineBuffer
C Local | A static class for getting information about the local machine's network name and address
C Lock | A private implementation class used by GNet::Select to lock data structures in the face of reentrancy
C Monitor | A singleton for monitoring SimpleClient and ServerPeer connections
C MonitorImp | A pimple pattern implementation class for GNet::Monitor
C MultiServer | A server that listens on more than one interface using a facade pattern to multiple Server instances
C MultiServerImp | A private implementation class used by GNet::MultiServer
C MultiServerPtr | A private implementation class used by GNet::MultiServer
C Resolver | A class for asynchronous TCP name-to-address resolution
C ResolverImp | A pimple-pattern implementation class for GNet::Resolver
C ResolverInfo | A class that holds a host/service name pair and optionally the results of a name-to-address lookup, ie
C Select | A concrete implementation of GNet::EventLoop using select() in the implementation
►C Server | A network server class which listens on a specific port and spins off ServerPeer objects for each incoming connection
C PeerInfo | A structure used in GNet::Server::newPeer()
C ServerPeer | An abstract base class for the GNet::Server's connection to a remote client
C ServerPeerHandle | A structure used in the implementation of GNet::Server
C SimpleClient | A class for making an outgoing connection to a remote server, with support for socket-level protocols such as TLS/SSL and SOCKS 4a
►C Socket | Encapsulates a non-blocking Unix socket file descriptor or a Windows 'SOCKET' handle
C Credentials | A credentials class that allows SocketProtocol to call Socket::fd()
C SocketProtocol | An interface for implementing a low-level protocol layer by means of calling read() and write() on a connected non-blocking socket and installing and removing event handlers as appropriate
C SocketProtocolImp | A private implementation class used by GNet::SocketProtocol
C SocketProtocolSink | An interface used by GNet::SocketProtocol to deliver data from a socket
C StreamSocket | A derivation of Socket for a stream socket
C Timer | A timer class template in which the timeout is delivered to the specified method
►C TimerList | A singleton which maintains a list of all Timer objects, and interfaces to the event loop on their behalf
C NoThrow | Overload discriminator class for TimerList
C TimerUpdate | A private implementation class used by GNet::AbstractTimer
►N GPop | POP3 classes
C Auth | An authenticator interface for POP3 sessions
C AuthImp | A private pimple-pattern implementation class used by GPop::Auth
C DirectoryReader | A trivial class which is used like G::Root by GPop::Store for reading directory listings
C FileDeleter | A trivial specialisation of G::Root used by GPop::Store for deleting files
C FileReader | A trivial class which is used like G::Root by GPop::Store for reading files
C Secrets | A simple interface to a store of secrets as used in authentication
C SecretsImp | A private pimple-pattern implementation class used by GPop::Secrets
►C Server | A POP server class
C Config | A structure containing GPop::Server configuration parameters
C ServerPeer | Represents a connection from a POP client
►C ServerProtocol | Implements the POP server-side protocol
C Config | A structure containing configuration parameters for ServerProtocol. NOT USED
C Security | An interface used by ServerProtocol to enable TLS
C Sender | An interface used by ServerProtocol to send protocol replies
C Text | An interface used by ServerProtocol to provide response text strings
C ServerProtocolText | A default implementation for the ServerProtocol::Text interface
C Store | A message store
C StoreLock | Represents an exclusive lock on the message store
C StoreLockEntry | Represents a file in the GPop::Store
►N GSmtp | SMTP and message-store classes
C AdminServer | A server class which implements the emailrelay administration interface
C AdminServerPeer | A derivation of ServerPeer for the administration interface
►C Client | A class which acts as an SMTP client, extracting messages from a message store and forwarding them to a remote SMTP server
C Config | A structure containing GSmtp::Client configuration parameters
►C ClientProtocol | Implements the client-side SMTP protocol
C Config | A structure containing GSmtp::ClientProtocol configuration parameters
C Sender | An interface used by ClientProtocol to send protocol messages
C ClientProtocolReply | A private implementation class used by ClientProtocol
C DirectoryReader | Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim read permissions for reading a directory
C ExecutableProcessor | A Processor class that processes message files using an external preprocessor program
C ExecutableVerifier | A Verifier that runs an executable
C FactoryParser | A simple class to parse identifiers that can be a program in the file system or a network address
C FileIterator | A 'body' class for the MessageStore::Iterator 'handle'
C FileReader | Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim read permissions for reading a file
C FileStore | A concrete implementation of the MessageStore interface dealing in paired flat files and with an optional external preprocessor program which is used to process files once they have been stored
C FileWriter | Used by GSmtp::FileStore, GSmtp::NewFile and GSmtp::StoredFile to claim write permissions
C InternalVerifier | The standard internal Verifier
►C MessageStore | A class which allows SMTP messages (envelope+content) to be stored and retrieved
C Iterator | An iterator class for GSmtp::MessageStore
C IteratorImp | A base class for MessageStore::Iterator implementations
C NetworkProcessor | A Processor class that passes the name of a message file to a remote process over the network
C NetworkVerifier | A Verifier that talks to a remote verifier over the network
C NewFile | A concrete derived class implementing the NewMessage interface
C NewMessage | An abstract class to allow the creation of a new message in the message store
C NullProcessor | A Processor class that does nothing
C Processor | An interface for processing message files
C ProcessorFactory | A factory for message processors
C ProtocolMessage | An interface used by the ServerProtocol class to assemble and process an incoming message
C ProtocolMessageForward | A concrete implementation of the ProtocolMessage interface which stores incoming messages in the message store and then immediately forwards them on to the downstream server
C ProtocolMessageStore | A concrete implementation of the ProtocolMessage interface that stores incoming messages in the message store
C RequestClient | A client class that interacts with a remote process with a stateless line-based request/response protocol
►C Server | An SMTP server class
C Config | A structure containing GSmtp::Server configuration parameters
C ServerPeer | Represents a connection from an SMTP client
►C ServerProtocol | Implements the SMTP server-side protocol
C Config | A structure containing configuration parameters for ServerProtocol
C Sender | An interface used by ServerProtocol to send protocol replies
C Text | An interface used by ServerProtocol to provide response text strings
C ServerProtocolText | A default implementation for the ServerProtocol::Text interface
C SpamClient | A client class that interacts with a remote process using a protocol somewhat similar to the spamassassin spamc/spamd protocol
C SpamProcessor | A Processor class that passes the body of a message file to a remote process over the network and stores the response back into the file
C StoredFile | A concete derived class implementing the StoredMessage interface
C StoredMessage | An abstract class for messages which have come from the store
C Verifier | An asynchronous interface that verifies recipient 'to' addresses
C VerifierFactory | A factory for addresss verifiers
C VerifierStatus | A structure returned by GSmtp::Verifier to describe the status of a rcpt-to recipient
►N GSsl | TLS/SSL transport layer security classes
C Certificate | An openssl X509 RAII class
C Context | An openssl context wrapper
C Error | A private exception class used by ssl classes
C Library | A RAII class for initialising the underlying ssl library
C LibraryImp | A private pimple class used by GSsl::Library
C Protocol | An SSL protocol class
C ProtocolImp | A private pimple class used by GSsl::Protocol
►N Main | Application-level classes
C Admin | A factory class for creating GSmtp::AdminServer objects
C CommandLine | A class which deals with the command-line interface to the process, both input and output
C CommandLineImp | A private implementation class used by Main::CommandLine
C Configuration | An interface for returning application configuration information
C Legal | A static class providing warranty and copyright text
C News | A static class providing some news text
C Output | An abstract interface for generating output on a command-line or a GUI
C Run | A top-level class for the process
C Show | A private implementation class used by Main::CommandLineImp
►N md5 | A standalone implementation of the MD5 hashing algorithm
C block | A helper class used by the md5::digest implementation to represent a 64-character data block
►C digest | A class that calculates an md5 digest from one or more 64-byte blocks of data using the algorithm described by RFC 1321
C state_type | Holds the md5 algorithm state. Used by md5::digest
►C digest_stream | A class that calculates an md5 digest from a data stream using the algorithm described by RFC 1321
C state_type | < Holds the state of an md5 digest stream. Used by md5::digest_stream
C format | A static string-formatting class for the output of md5::digest
C App | An implementation of the Main::Output abstract interface for command-line output