E-MailRelay

- Main Page
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Classes | Functions
GNet Namespace Reference

Network classes. More...

## Classes
class | AcceptPair
| A class which is used to return a new()ed socket to calling code, together with associated address information. More...
class | Address
| The GNet::Address class encapsulates a TCP/UDP transport address. More...
class | Address4
| A 'sockaddr' wrapper class for IPv4 addresses. More...
class | Address6
| A 'sockaddr' wrapper class for IPv6 addresses. More...
class | AddressStorage
| A helper class for calling accept(), getsockname() and getpeername() and hiding the definition of sockaddr_storage. More...
class | AddressStorageImp
| A pimple-pattern implementation class used by GNet::AddressStorage. More...
class | BufferedServerPeer
| A ServerPeer that does line-buffering on input. More...
class | Client
| A HeapClient class that adds slot/signal signalling, connection/response timeouts, and input line buffering. More...
class | ClientPtr
| A smart pointer class for GNet::HeapClient that keeps track of when the contained instance deletes itself. More...
class | Connection
| An abstract interface which provides address information for a network connection. More...
class | DatagramSocket
| A derivation of GNet::Socket for a datagram socket. More...
class | Descriptor
| A class that encapsulates a network socket file descriptor and an associated windows event handle. More...
class | EventHandler
| A base class for classes that handle asynchronous events from the event loop. More...
class | EventHandlerList
| A class that maps from a file descriptor to an event handler, used in the implemention of classes derived from GNet::EventLoop. More...
class | EventLoop
| An abstract base class for a singleton that keeps track of open sockets and their associated handlers. More...
class | EventLoopImp
| A concrete implementation of GNet::EventLoop using select() in its implementation. More...
class | ExceptionHandler
| An abstract interface for handling exceptions thrown out of event-loop callbacks (socket events, future events and timer events). More...
class | FdSet
| An "fd_set" wrapper class used by GNet::EventLoopImp. More...
class | FutureEvent
| An object that hooks into the event loop and calls back to the client code. More...
class | FutureEventHandler
| A callback interface for GNet::FutureEvent. More...
class | FutureEventImp
| A pimple-pattern implementation class used by GNet::FutureEvent. More...
class | HeapClient
| A SimpleClient class for client objects that manage their own lifetime on the heap. More...
class | LineBuffer
| A class that does line buffering, supporting auto-detection of line endings and fixed-size extraction. More...
class | LineBufferConfig
| A configuration structure for GNet::LineBuffer. More...
class | LineBufferIterator
| Syntactic sugar for calling GNet::LineBuffer iteration methods. More...
class | Local
| A static class for getting information about the local machine's network name and address. More...
class | Location
| A class that holds a host/service name pair and the preferred address family (if any), and also the results of a name-to-address lookup, ie. More...
class | Monitor
| A singleton for monitoring GNet::SimpleClient and GNet::ServerPeer connections and for storing their TLS certificates. More...
class | MonitorImp
| A pimple-pattern implementation class for GNet::Monitor. More...
class | MultiServer
| A server that listens on more than one interface using a facade pattern to multiple GNet::Server instances. More...
class | MultiServerImp
| A private implementation class used by GNet::MultiServer. More...
class | MultiServerPtr
| A private implementation class used by GNet::MultiServer. More...
class | Resolver
| A class for synchronous or asynchronous network name to address resolution. More...
class | ResolverFuture
| A 'future' object for asynchronous name resolution, in practice holding just enough state for a single call to getaddrinfo(). More...
class | ResolverImp
| A private "pimple" implementation class used by GNet::Resolver to do asynchronous name resolution. More...
class | Server
| A network server class which listens on a specific port and spins off ServerPeer objects for each incoming connection. More...
class | ServerPeer
| An abstract base class for the GNet::Server's connection to a remote client. More...
class | ServerPeerHandle
| A structure used in the implementation of GNet::Server. More...
class | 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. More...
class | Socket
| A network socket base class, holding a non-blocking socket file descriptor. More...
class | SocketProtocol
| An interface for implementing a low-level TLS/SSL protocol layer on top of a connected non-blocking socket. More...
class | SocketProtocolImp
| A pimple-pattern implementation class used by GNet::SocketProtocol. More...
class | SocketProtocolSink
| An interface used by GNet::SocketProtocol to deliver data from a socket. More...
class | Socks
| Implements the socks4a proxy connection protocol. More...
class | StreamSocket
| A derivation of GNet::Socket for a stream socket. More...
class | Task
| A class for running an exectuable in a separate process with an asychronous completion callback. More...
class | TaskCallback
| An abstract interface for callbacks from GNet::Task. More...
class | TaskImp
| A private implementation class used by GNet::Task. More...
class | Timer
| A timer class template in which the timeout is delivered to the specified method. More...
class | TimerBase
| An interface used by GNet::TimerList to keep track of pending timeouts and to deliver timeout events. More...
class | TimerList
| A singleton which maintains a list of all Timer objects, and interfaces to the event loop on their behalf. More...

## Functions
int | inet_pton_imp (int f, const char *p, void *result)
const char * | inet_ntop_imp (int f, void *ap, char *buffer, size_t n)
std::ostream & | operator<< (std::ostream &stream, const Descriptor &d)
std::ostream & | operator<< (std::ostream &stream, const Location &location)
std::ostream & | operator<< (std::ostream &stream, const SocketProtocolImp::Position &pos)
std::ostream & | operator<< (std::ostream &stream, const SocketProtocolImp::Segment &segment)
std::ostream & | operator<< (std::ostream &stream, const SocketProtocolImp::Segments &segments)

## Detailed Description

Network classes.

The GNet namespace contains network interface classes based on the Berkley socket and WinSock system APIs.

Key classes are:

- Address
- EventHandler
- EventLoop
- MultiServer
- Resolver
- Server
- Socket
- Timer