This class is a base class for the FBB::ServerSocket and
FBB::ClientSocket classes. Since it is designed as a base class, all its
constructors are protected.
NAMESPACE
FBB
All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace FBB.
INHERITS FROM
FBB::InetAddress
PROTECTED CONSTRUCTORS
SocketBase(size_t port):
This constructor creates a SocketBase to be used with
ServerSocket-objects, listening on port.
This constructor throws an Exception exception if it did not
properly complete.
SocketBase(std::string const &host, uint16_t port):
This constructor creates a FBB::SocketBase to be used with a
ClientSocket-object, connecting to hostname, at port
`port'.
This constructor throws an Exception exception if it did not
properly complete.
SocketBase(int socket, sockaddr_in const &address):
This constructor constructs a FBB::SocketBase object initializing
its socket and FBB::InetAddress part from available external
objects.
The (public) copy constructor is available.
MEMBER FUNCTIONS
All members of FBB::InetAddress are
available, as FBB::SocketBase inherits from this class.
bool debug() const:
This accessor returns true if the socket's debug
(SO_DEBUG) socket option is active. It throws an FBB::Exception exception
if the status of the debug option could not be determined.
bool reuse() const:
This accessor returns true if the socket's reuse
(SO_REUSEADDR) socket option is active. It throws an FBB::Exception
exception if the status of the reuse option could not be determined.
void setDebug(bool trueIsOn) const:
This member may be used to modify the socket's debug
(SO_DEBUG) socket option. It throws an FBB::Exception exception
if the socket's debug option could not be modified.
void setReuse(bool trueIsOn) const:
This member may be used to modify the socket's reuse
(SO_REUSEADDR) socket option. It throws an FBB::Exception exception
if the socket's reuse option could not be modified.
int socket() const:
This accessor returns the FBB::SocketBase's socket value.
void verify() const:
Obsoleted, will be removed in a future Bobcat release.
EXAMPLE
The classes FBB::ClientSocket and FBB::ServerSocket were derived
from SocketBase. E.g.,
#ifndef INCLUDED_BOBCAT_CLIENTSOCKET_
#define INCLUDED_BOBCAT_CLIENTSOCKET_
#include <string>
#include <bobcat/socketbase>
namespace FBB
{
class ClientSocket: public SocketBase
{
public:
// host may be address or name
ClientSocket(std::string const &host, uint16_t port);
int connect(); // returns fd (socket) to talk to the server
};
} // FBB
#endif
See the clientsocket(3bobcat) man-page for an example showing how to
use FBB::ClientSocket.