Subject: [manet] RFC 5444 parser/generator library

From: Henning Rogge <[email-masked]>
Date: Mon, 12 Jul 2010 17:14:02 +0200

Hi,

during the last months I have been working on a C library to make it easier to 
develop protocols using RFC 5444 (packetbb).

The library allows 'Multiplexing and Demultiplexing' RFC 5444 data streams, 
similar to the Appendix A.

Each incoming or outgoing message is owned by a single part of the protocol 
using the API, but the TLVs and addresses can be added/parsed by multiple 
independent parts of code. The writer code of the library automatically merge 
the TLVs and compress the addresses.

The library should allow to implement NHDP on it's own, then implement OLSRv2 
(which has to add content to the NHDP messages) without changing the NHDP code 
path. This should make it easier to break complex protocol implementation into 
multiple independant parts and reduce the complexity of the code.

The repository contains the sourcecode of the API, examples and code for 
automatic regression testing.
I call this version of the API v0.8.0, because it's not the finished 1.0 
version I am looking forward to. I plan to get some feedback about the API, 
both on this list and on the IETF meeting in Maastricht. I plan to take a 
v0.9.0 to the OLSR interop meeting later this year and release the v1.0.0 
version after this.

You will find the webview of the repository at 
http://olsr.org/git/?p=packetbb.git;a=summary

You can clone it with one of this two commands:

git clone git://olsr.org/packetbb.git
git clone http://olsr.org/git/packetbb.git

The library is BSD licenced and will be used for the OLSRv2 implementation of 
OLSR.org.

Henning Rogge

-- 
1) You can't win.
2) You can't break even.
3) You can't leave the game.
— The Laws of Thermodynamics, summarized