SILC Protocol Interface
Header: silcprotocol.h

DESCRIPTION

 Implementation of the protocol handling routines for SILC applications.
 These routines allow execution of arbitrary protocols in the application.
 New protocols may be registered by type and allocated later by that
 type for the execution. The protocols implements a state machine style
 execution where each state is executed one after the other. The
 application controls these states and their order of execution.
 
 After the protocol has been executed, an final callback is called
 which the application may use to do post-protocol work or to start
 perhaps other protocols. These routines are generic and the actual
 protocols, their types, callback and final callbacks functions must
 be implemented in the application.