FBB::SocketBase(3bobcat)
NAME
FBB::SocketBase - Base class for socket-constructing classes
SYNOPSIS
#include <bobcat/socketbase>
Linking option: -lbobcat
DESCRIPTION
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
- o SocketBase(size_t port):
- This constructor creates a SocketBase to be used with ServerSocket-objects, listening on port.
- This constructor throws an Errno exception if it did not properly complete.
- o SocketBase(std::string const &host, unit_16_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 Errno exception if it did not properly complete.
- o 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.
- o bool debug() const:
- This accessor returns true if the socket's debug (SO_DEBUG) socket option is active. It throws an FBB::Errno exception if the status of the debug option could not be determined.
- o bool reuse() const:
- This accessor returns true if the socket's reuse (SO_REUSEADDR) socket option is active. It throws an FBB::Errno exception if the status of the reuse option could not be determined.
- o void setDebug(bool trueIsOn) const:
- This member may be used to modify the socket's debug (SO_DEBUG) socket option. It throws an FBB::Errno exception if the socket's debug option could not be modified.
- o void setReuse(bool trueIsOn) const:
- This member may be used to modify the socket's reuse (SO_REUSEADDR) socket option. It throws an FBB::Errno exception if the socket's reuse option could not be modified.
- o int socket() const:
- This accessor returns the FBB::SocketBase's socket value.
- o 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 <bobcat/socketbase>
#include <string>
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.
FILES
bobcat/socketbase - defines the class interface
SEE ALSO
bobcat(7), clientsocket(3bobcat), inetaddress(3bobcat), localsocketbase(3bobcat), serversocket(3bobcat)
BUGS
None Reported.
DISTRIBUTION FILES
o bobcat_2.08.01-x.dsc: detached signature;
o bobcat_2.08.01-x.tar.gz: source archive;
o bobcat_2.08.01-x_i386.changes: change log;
- o libbobcat1_2.08.01-x_*.deb: debian package holding the
- libraries;
- o libbobcat1-dev_2.08.01-x_*.deb: debian package holding the
- libraries, headers and manual pages;
- o http://sourceforge.net/projects/bobcat: public archive location;
BOBCAT
Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
COPYRIGHT
This is free software, distributed under the terms of the GNU General
Public License (GPL).
AUTHOR
- Frank B. Brokken (f.b.brokken@rug.nl).