summaryrefslogtreecommitdiff
path: root/doc/msc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/msc')
-rw-r--r--doc/msc/rvi_protocol_double_connect1.msc23
-rw-r--r--doc/msc/rvi_protocol_double_connect2.msc10
-rw-r--r--doc/msc/rvi_protocol_flow.msc32
-rw-r--r--doc/msc/rvi_protocol_frag1.msc23
4 files changed, 88 insertions, 0 deletions
diff --git a/doc/msc/rvi_protocol_double_connect1.msc b/doc/msc/rvi_protocol_double_connect1.msc
new file mode 100644
index 0000000..eb22f83
--- /dev/null
+++ b/doc/msc/rvi_protocol_double_connect1.msc
@@ -0,0 +1,23 @@
+#
+#
+# Sequence diagram description
+#
+# The sequence diagram description below is translated to
+# a PNG image by mscgen (http://www.mcternan.me.uk/mscgen/)
+#
+# Recompile updated diagrams to a png image with:
+#
+# mscgen -T png rvi_core_double_connect.msc
+#
+
+msc {
+ width="400";
+ "Client", "Server";
+ "Client" -> "Server" [ label = "Connect" ];
+ "Client" <-> "Server" [ label = "TLS Upgrade" ];
+ "Client" -> "Server" [ label = "authorize(...)" ];
+ "Client" <- "Server" [ label = "authorize(...)" ];
+ "Client" abox "Server" [ label = "Race Condition" ] ;
+}
+
+
diff --git a/doc/msc/rvi_protocol_double_connect2.msc b/doc/msc/rvi_protocol_double_connect2.msc
new file mode 100644
index 0000000..0240df5
--- /dev/null
+++ b/doc/msc/rvi_protocol_double_connect2.msc
@@ -0,0 +1,10 @@
+msc {
+ width="400";
+ "Client", "Server";
+ "Server" -> "Client" [ label = "Connect" ];
+ "Server" <-> "Client" [ label = "TLS Upgrade" ];
+ "Client" <- "Server" [ label = "authorize(...)" ];
+ "Client" -> "Server" [ label = "authorize(...)" ];
+ "Client" abox "Server" [ label = "Race Condition" ] ;
+}
+
diff --git a/doc/msc/rvi_protocol_flow.msc b/doc/msc/rvi_protocol_flow.msc
new file mode 100644
index 0000000..f4a84b3
--- /dev/null
+++ b/doc/msc/rvi_protocol_flow.msc
@@ -0,0 +1,32 @@
+#
+#
+# Sequence diagram description
+#
+# The sequence diagram description below is translated to
+# a PNG image by mscgen (http://www.mcternan.me.uk/mscgen/)
+#
+# Recompile updated diagrams to a png image with:
+#
+# mscgen -T png swm.msc
+#
+
+msc {
+ width="1024";
+ "Client", "Server";
+ "Client" -> "Server" [ label = "connect" ];
+ "Client" -> "Server" [ label = "TLS Upgrade using X.509 certificates" ];
+ "Client" -> "Server" [ label = "authorize( [JWT (credential, root_sign), ...] )" ];
+ "Server" abox "Server" [ label = "Validate each credential using root public key" ] ;
+ "Client" <- "Server" [ label = "authorize( [JWT (credential, root_sign), ...] ) )" ];
+ "Client" abox "Client" [ label = "Validate each crential using root public key" ] ;
+
+ "Client" abox "Client" [ label = "Create list of services matching server credentials" ] ;
+ "Client" -> "Server" [ label = "service_announce( [service_name, ... ])" ];
+ "Server" abox "Server" [ label = "Create list of services matching client credentials" ] ;
+ "Client" <- "Server" [ label = "service_announce( [service_name, ... ])" ];
+
+ "Client" -> "Server" [ label = "message( service_name, arguments)" ];
+
+ "Server" -> "Client" [ label = "message( service_name, arguments)" ];
+}
+
diff --git a/doc/msc/rvi_protocol_frag1.msc b/doc/msc/rvi_protocol_frag1.msc
new file mode 100644
index 0000000..11d467f
--- /dev/null
+++ b/doc/msc/rvi_protocol_frag1.msc
@@ -0,0 +1,23 @@
+#
+#
+# Sequence diagram description
+#
+# The sequence diagram description below is translated to
+# a PNG image by mscgen (http://www.mcternan.me.uk/mscgen/)
+#
+# Recompile updated diagrams to a png image with:
+#
+# mscgen -T png rvi_protocol_frag1.msc
+#
+
+msc {
+ width="400";
+ "Client", "Server";
+ "Client" -> "Server" [ label = "{frg, [ID, Size, Offs1, Bin1]}" ];
+ "Client" <- "Server" [ label = "{frg-get, [ID, Offs2, Bytes2]}" ];
+ "Client" -> "Server" [ label = "{frg, [ID, Size, Offs2, Bin2]}" ];
+ "Client" <- "Server" [ label = "{frg-get, [ID, Offs3, Bytes3]}" ];
+ "Client" -> "Server" [ label = "{frg, [ID, Size, Offs3, Bin3]}" ];
+ "Client" <- "Server" [ label = "{frg-end, [ID, ResultCode]}" ];
+ "Client" abox "Server" [ label = "Message complete" ] ;
+}