# FBB::LocalSocketBase(3bobcat)

## Base class for Unix Domain sockets
(libbobcat-dev_6.02.02)

## 2005-2022

## NAME

FBB::LocalSocketBase - Base class for Unix Domain socket-constructing classes

## SYNOPSIS

#include <bobcat/localsocketbase>
Linking option: -lbobcat

## DESCRIPTION

This class is a base class for the FBB::LocalServerSocket and FBB::LocalClientSocket classes. Since it is designed as a base class, its constructor is protected. All its remaining members are protected as well.

## NAMESPACE

FBB
All constructors, members, operators and manipulators, mentioned in this man-page, are defined in the namespace FBB.

## INHERITS FROM

-

## PROTECTED CONSTRUCTOR

- LocalSocketBase():
  The default constructor merely constructs a FBB::LocalSocketBase object. Before the object can be used, its open() member must be called first.
- LocalSocketBase(string const &name):
  This constructor creates a LocalSocketBase using the file specified in name as the Unix domain socket interface. If the socket could not be constructed, an FBB::Exception exception is thrown.

Copy and move constructors (and assignment operators) are not available.

## PROTECTED MEMBER FUNCTIONS

- open(string const &name):
  This member initiaizes a LocalSocketBase object following its construction using the default constructor. The file specified in name is used as the Unix domain socket interface. If the socket could not be constructed, an FBB::Exception exception is thrown.
- size_t size() const:
  Accessor returning the size of the object's sockaddr_un (address)
- int socket() const:
  This accessor returns the FBB::LocalSocketBase's socket value.
- sockaddr const *sockaddrPtr() const:
  Accessor returning the pointer to the object's sockaddr.

## EXAMPLE

See the examples presented with the localclientsocket(3bobcat) and localserversocket(3bobcat) classes.

## FILES

bobcat/localsocketbase - defines the class interface

## SEE ALSO

bobcat(7), localclientsocket(3bobcat), localserversocket(3bobcat), socketbase(3bobcat)

## BUGS

None Reported.

## BOBCAT PROJECT FILES

- https://fbb-git.gitlab.io/bobcat/: gitlab project page;
- bobcat_6.02.02-x.dsc: detached signature;
- bobcat_6.02.02-x.tar.gz: source archive;
- bobcat_6.02.02-x_i386.changes: change log;
- libbobcat1_6.02.02-x_*.deb: debian package containing the libraries;
- libbobcat1-dev_6.02.02-x_*.deb: debian package containing the libraries, headers and manual pages;

## 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).