OpenSolaris_b135/lib/librstp/common/README.files

This guide describes the list of the files of the project.
==========================================================

There are two target binaries: mngr & bridge
o The first  is  a simplest  tools  to  connect/disconnect
  bridges and  check  their current connection.  These its
  functions are managed from command line simple  language
  and use the library libcli.a (see below). Beside it mngr
  serves to transport BPDU messages between  bridges;  for 
  this purpose mngr uses the library libuid.a
  The source code of the mngr: file mngr.c

o The second is a simulation of virtual  RSTP  bridge.  It
  accepts two types of messages: UID_CNTRL & UID_BPDU (see
  file uid.h).  This program  is  linked with the same two
  libraries libcli.a & libuid.a;  beside  it uses a system
  independent librstp.a: implementation of Rapid  Spanning
  Tree (802.1w) - see below.
  The source code of the bridge: files bridge.c,stp_cli.c,
  stp_to.c
    * bridge.c - simulates the main bridge behavior
    * stp_cli.c - consists from command line functions
    * stp_to.c - API, that librstp.a uses for its purposes.
  The management communication between bridge and librstp.a
  uses structures and definitions from the header uid_stp.h

o libcli.a - library for command line features. It has only
  one file cli.c, the API is described in the header cli.h.

o libuid.a - the 'transport' library: the source code you
  may find in the file uid_sock.c and in the two headers:
  uid.h & uid_sock.h

o (so far, so good) librstp.a - it is a heart of the project
  Actually, it implements 802.1w state machines. Files
  stpm.c - the RSTP instance (some reflection of Port0)
  port.c - the RSTP port instance
  portinfo.c - Port Information State Machine, 17.21
  rolesel.c - Port Role Selection State Machine, 17.22 
  roletrns.c - Port Role Transition State Machine, 17.23
  sttrans.c - Port State Transition State Machine, 17.24
  topoch.c - Topology Change State Machine, 17.25
  migrate.c - Port Protocol Migration State Machine, 17.26
  transmit.c - Port Transmit State Machine 17.27
  pcost.c - Path Cost Resolution State Machine
  edge.c - operEdge Port Resolution State Machine
  p2p.c - operPointToPoit Resolution State Machine
  statmch.c - generic state machine implementation
  vector.c - Priority Vectors manipulations
  times.c - Times manipulations 
  stp_in.c - API for calls from outside.
  sttrans.c - API for calls from outside (dedicated for creation
              deleting, starting & stopping the RSTP instance) less
              relevant to the project.