Servus  1.1.0
A small set of network oriented utilities in C++ including a zeroconf implementation.
 All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
Servus Documentation

Table of Contents

Introduction

Servus is a small C++ network utility library that provides a zeroconf API, uri parsing and UUIDs.

Servus 1.1 can be retrieved by cloning the source code. Please file a Bug Report if you find any issues with this release.

Features

Servus provides classes for:

  • 128 bit UUIDs.
  • A URI class to parse strings using generic syntax from RFC3986.
  • Zeroconf announcing and browsing using Avahi or DNSSD. This is an optional feature available only if the dependencies are found.

Building

Servus is partially cross-platform, the only mandatory dependency is using a C++11 compiler. Zeroconf will be available in those platforms were either Avahi or DNSSD are available. Servus uses CMake to provide a platform-independent build configuration. The following platforms and build environments have been tested:

  • Linux: Ubuntu 14.04, RHEL 6 using gcc 4.8.2
  • Windows: 8 using Visual Studio 12
  • Mac OS X: 10.9 and 10.10 using clang 6

The following external, pre-installed optional dependencies are required:

  • Boost.Test to build unit tests.
  • Avahi (avahi-client) or DNSSD for zeroconf.

To download and compile Servus from source:

git clone https://github.com/HBPVIS/Servus.git
cd Servus
mkdir build
cd build
cmake ..
make