FREESECS project

HSMS-SS (E37.1 stack)

FREESECS solution for HSMS-SS is a core library written in C++ and wrappers exposing C interface to the clients. With release 0.9.0, the only interface wrapper available is daemon process plus a thin client coming as a shared object library. Daemon and client communicate using named FIFO pipes.

Main features of FREESECS HSMS:
  • Event-based design pattern: client gets events from HSMS lib/daemon through callbacks mechanism;
  • HSMS lib is multi-threaded: one temporary thread per each connection to establish the link plus one persistent thread for all connections to handle asynchronous events (timers, incoming messages) with POSIX select;
  • HSMS lib uses POSIX SIGUSR1 signal to handle timers for HSMS connections.
  • FREESECS HSMS library interface is quite simple. It will be broaden to meet SECSII needs but not too much.
  • Alongwith FREESECS HSMS lib, a number of tests comes, including performance tests so you could try the messaging speed on your system. Please see README in the library package for details of how to run the whole system and the tests.