- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1 2 3 4 5]

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