The Sockets Client API has four main client interfaces:
RSocketServ
: Establishes and reserves resources for the base communication session to the socket server. All other client interfaces require a valid session to be opened.
RSocket
: End point for all socket-based communications.
RHostResolver
: Interface for making host name resolution queries.
RNetDatabase
: Interface for network database access.
The Sockets Client API also defines a number of support classes used in conjunction with the above interfaces. These encapsulate:
Addresses: a base address class TSockAddr
is defined. Specific protocol address classes are derived from this. Each address can be identified by its Protocol Family, an integer which identifies protocol suites from others.
Resolution queries: queries made through RHostResolver
objects are packaged in TNameEntry
descriptors. These are packages for TNameRecord
objects that contain TSockAddr
objects to pass in addresses.
Protocol information: a comprehensive description of a protocol’s capabilities and properties can be dynamically obtained through the TProtocolDesc
class. Capabilities are identified by constants.
Endian issues: BigEndian
, LittleEndian
, and ByteOrder
can be used to order integers to and from network order.