A protocol which wishes to provide socket services must be able to
instantiate CServProviderBase
-derived objects using
CProtocolBase::NewSAPL()
. These objects are used by the socket
server to send data onto the network via the protocol.
In general, protocols are either connection oriented or
connectionless. To a large extent this affects the meaning of many of a
CServProviderBase
-derived object’s member functions—these
differences are pointed out in the reference documentation for the relevant
functions.
The CServProviderBase
class is used by the socket server
to provide transport services to a single protocol. Several of the calls to
CServProviderBase
have pre-conditions attached to them—for
example, a connection oriented protocol must have its local address set (either
by a SetLocalName()
or AutoBind()
) before it is
opened.
The MSocketNotify
class is an abstract base class used
by an CServProviderBase
-derived object through its
iSocket
member to notify the socket server that various events
have occurred. The MSocketNotify
class provides several up-call
member functions.