summaryrefslogtreecommitdiff
path: root/usr/src/lib/librstp/common/README.files
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/librstp/common/README.files')
-rw-r--r--usr/src/lib/librstp/common/README.files58
1 files changed, 58 insertions, 0 deletions
diff --git a/usr/src/lib/librstp/common/README.files b/usr/src/lib/librstp/common/README.files
new file mode 100644
index 0000000000..f08ea7d503
--- /dev/null
+++ b/usr/src/lib/librstp/common/README.files
@@ -0,0 +1,58 @@
+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.
+
+
+
+