Andrew Bettison a79156c4d0 Add Swift daemon API, use in 'servaldswift'
The daemon API is built as a Swift module called ServalDNA.

The new CliContext class allows easy implementation of CLI output using
Swift code.  The new CliContextFile subclass is the obvious first
implementation, equivalent to cli_stdio.c.  The 'servaldswift'
executable now uses CliContextFile to print its CLI output to standard
output.

The new delegated log output support constructs each log line in a
buffer and prints it by calling the delegate's 'print' function at
end-of-line.  The 'servaldswift' executable now provides a log output
delegate in Swift that simply prints to standard error, replacing
log_output_console.o, which is omitted from its link.
2018-03-06 15:29:17 +10:30
..
2014-05-19 17:28:42 +09:30
2014-05-21 17:37:23 +09:30
2015-01-07 15:56:56 +01:00
2017-05-30 09:27:48 +09:30
2014-05-21 17:37:23 +09:30

Serval DNA Technical Documentation

Serval Project, October 2016

This directory contains technical documents that accompany the Serval DNA component of the Serval mesh network.

  • Building Serval DNA has instructions to build a native Serval DNA executable.

  • Testing Serval DNA describes the Serval DNA test scripts and the test framework.

  • Configuring Serval DNA describes the persistent configuration system and its command-line API, the built-in system file paths, daemon instances and basic network configuration.

  • Notes for Developers contains information of use to developers of Serval DNA and to those experiencing build problems.

  • MDP Packet Filtering describes the configuration options and rules file syntax for filtering incoming and outgoing MDP packets.

  • Tunnelling describes how to tunnel IP over the Serval mesh network.

  • Serval DNA on OpenWRT describes how to build and install Serval DNA packages for the OpenWRT platform.

  • Serval DNA OpenBTS support describes how Serval DNA has been integrated with the Commotion Wireless OpenBTS mobile telephony platform.

  • Mesh Datagram Protocol (MDP) describes the fundamental mesh protocol used in Serval Mesh networks and its C programming API.

  • Mesh Stream Protocol (MSP) describes a reliable message stream protocol used in Serval Mesh networks and its C programming API.

  • REST API describes the common features of the various HTTP REST APIs through which applications access the services of the Serval mesh network, including:

  • CLI API describes the command-line interface used for controlling the Serval DNA daemon and accessing its services.

  • Cooee describes the protocol used for discovering services available on nearby (reachable) mesh network nodes.

  • Serval Infrastructure contains notes on plans for how a Serval mesh network can use the Internet to increase its reach and usefulness.


Copyright 2014 Serval Project Inc.
Copyright 2016 Flinders University
CC-BY-4.0 This document is available under the Creative Commons Attribution 4.0 International licence.