/sps

Scheme library to specify network protocol state machines

Primary LanguageSchemeMIT LicenseMIT

SPS

Scheme library to specify network protocol state machines for specification-based symbolic execution of stateful network protocol implementations. This Scheme library is intended to be used with a fork of SymEx-VP. More details about this library are provided in the IEEE Internet of Things Journal publication “Specification-based Symbolic Execution for Stateful Network Protocol Implementations in the IoT”.

Installation

This library is intended to be used with CHICKEN Scheme. It depends on the sisl library which needs to be installed separately manually. If both sisl and CHICKEN are installed and configured corretly then the SPS library can be installed using:

$ chicken-install

Usage Example

Example network protocol specifications are provided in the ./example directory. More details are also provided in the aforementioned journal publication.

License

This library is licensed under MIT. The lib/util.scm file includes a copy of the switch macro from moremacros written by Kon Lovett.