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.