summaryrefslogtreecommitdiffstats
path: root/doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc')
-rw-r--r--doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc34
1 files changed, 34 insertions, 0 deletions
diff --git a/doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc b/doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc
new file mode 100644
index 0000000..34a025d
--- /dev/null
+++ b/doc/userguide/devguide/extending/app-layer/diagrams/TlsHandshake.msc
@@ -0,0 +1,34 @@
+# MSC Sequence Diagram Example: TLS Handshake Transaction
+
+msc {
+ # Chart Options
+ arcgradient = "10";
+
+ # Entities
+ a [ label = "Client" ], b [ label = "Server" ];
+
+ # Message Flow
+ # TLS_STATE_IN_PROGRESS = 0,
+ a abox b [ label = "TLS_STATE_IN_PROGRESS" ];
+ a =>> b [ label = "ClientHello" ];
+ b =>> a [ label = "ServerHello" ];
+ b =>> a [ label = "ServerCertificate" ];
+ b =>> a [ label = "ServerHello Done" ];
+
+ a =>> b [ label = "ClientCertificate" ];
+ # TLS_STATE_CERT_READY = 1,
+ a abox b [ label = "TLS_STATE_CERT_READY" ];
+ a =>> b [ label = "ClientKeyExchange" ];
+
+ a =>> b [ label = "Finished" ];
+ b =>> a [ label = "Finished" ];
+ # TLS_HANDSHAKE_DONE = 2,
+ a abox b [ label = "TLS_HANDSHAKE_DONE" ];
+ ...;
+ # TLS_STATE_FINISHED = 3
+ a abox b [ label = "TLS_STATE_FINISHED" ];
+ --- [ label = "Transaction Completed" ];
+
+ |||;
+ ||| [label="[ generated with Mscgen ]", textcolor="gray"];
+}