Skip to content

Commit 33d1cd5

Browse files
c-southwestkostis
andauthored
Add WolfSSL 5.7.6 support (#155)
* Add WolfSSL 5.7.6 support to setup_sut.sh * Add patch for WolfSSL 5.7.6: modify PSK and timeout * Set 5.7.6 as default version for WolfSSL in default_fuzzer.properties * Add GitHub Actions for WolfSSL 5.7.6 Client and Server --------- Co-authored-by: Kostis Sagonas <kostis@it.uu.se>
1 parent 4e89811 commit 33d1cd5

File tree

20 files changed

+1048
-3
lines changed

20 files changed

+1048
-3
lines changed

.github/workflows/ci.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,3 +428,55 @@ jobs:
428428
run: |
429429
java -jar target/dtls-fuzzer.jar args/wolfssl/learn_wolfssl_client_psk -Dwolfssl.version=4.7.1r -roundLimit 6
430430
experiments/scripts/diff_hyps.sh experiments/models/regression/clients/rounds/wolfssl-4.7.1r_client_psk output/wolfssl-4.7.1r_client_psk 6
431+
432+
WolfSSL-5-7-6_Server_psk:
433+
if: ${{ !contains(github.event.head_commit.message, 'ci skip') }}
434+
runs-on: ubuntu-latest
435+
strategy:
436+
fail-fast: true
437+
steps:
438+
- name: Checkout code
439+
uses: actions/checkout@v4
440+
441+
- name: Set up JDK 17
442+
uses: actions/setup-java@v4
443+
with:
444+
java-version: '17'
445+
distribution: 'temurin'
446+
447+
- name: Install DTLS-Fuzzer
448+
run: ./install.sh
449+
450+
- name: Setup SUT
451+
run: ./setup_sut.sh wolfssl-5.7.6
452+
453+
- name: Test wolfssl-5.7.6 Server (psk)
454+
run: |
455+
java -jar target/dtls-fuzzer.jar args/wolfssl/learn_wolfssl_server_psk -Dwolfssl.version=5.7.6 -roundLimit 4
456+
experiments/scripts/diff_hyps.sh experiments/models/regression/servers/rounds/wolfssl-5.7.6_server_psk output/wolfssl-5.7.6_server_psk 4
457+
458+
WolfSSL-5-7-6_Client_psk:
459+
if: ${{ !contains(github.event.head_commit.message, 'ci skip') }}
460+
runs-on: ubuntu-latest
461+
strategy:
462+
fail-fast: true
463+
steps:
464+
- name: Checkout code
465+
uses: actions/checkout@v4
466+
467+
- name: Set up JDK 17
468+
uses: actions/setup-java@v4
469+
with:
470+
java-version: '17'
471+
distribution: 'temurin'
472+
473+
- name: Install DTLS-Fuzzer
474+
run: ./install.sh
475+
476+
- name: Setup SUT
477+
run: ./setup_sut.sh wolfssl-5.7.6
478+
479+
- name: Test wolfssl-5.7.6 Client (psk)
480+
run: |
481+
java -jar target/dtls-fuzzer.jar args/wolfssl/learn_wolfssl_client_psk -Dwolfssl.version=5.7.6 -roundLimit 6
482+
experiments/scripts/diff_hyps.sh experiments/models/regression/clients/rounds/wolfssl-5.7.6_client_psk output/wolfssl-5.7.6_client_psk 6
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<!-- DTLS alphabet comprising the messages necessary to perform client-side PSK handshakes. -->
2+
<alphabet>
3+
<HelloVerifyRequestInput name="HELLO_VERIFY_REQUEST"/>
4+
<ServerHelloInput suite="TLS_PSK_WITH_AES_128_CBC_SHA256" name="PSK_SERVER_HELLO"/>
5+
<ServerHelloDoneInput name="SERVER_HELLO_DONE"/>
6+
<ChangeCipherSpecInput/>
7+
<FinishedInput name="FINISHED"/>
8+
<GenericTlsInput name="APPLICATION">
9+
<Application>
10+
<data>
11+
<byteArrayExplicitValueModification>
12+
<!--HEX(This is a hello message!)-->
13+
<explicitValue>0x5468697320697320612068656c6c6f206d65737361676521</explicitValue>
14+
</byteArrayExplicitValueModification>
15+
</data>
16+
</Application>
17+
</GenericTlsInput>
18+
<AlertInput name="Alert(WARNING,CLOSE_NOTIFY)" level="WARNING" description="CLOSE_NOTIFY"/>
19+
<AlertInput name="Alert(FATAL,UNEXPECTED_MESSAGE)" level="FATAL" description="UNEXPECTED_MESSAGE"/>
20+
</alphabet>
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
state-fuzzer-client
2+
3+
# SUT config
4+
-port
5+
${sul.port}
6+
-startWait
7+
200
8+
-responseWait
9+
200
10+
-protocol
11+
DTLS12
12+
-cmd
13+
${fuzzer.dir}/suts/wolfssl-${wolfssl.version}/examples/client/client -i -x -p ${sul.port} -s -u -l PSK-AES128-CBC-SHA256
14+
-processDir
15+
${fuzzer.dir}/suts/wolfssl-${wolfssl.version}/
16+
17+
# learning config
18+
-alphabet
19+
${alphabets.clients}/psk.xml
20+
-randLength
21+
10
22+
-equivalenceQueryBound
23+
20000
24+
-output
25+
output/wolfssl-${wolfssl.version}_client_psk
26+
-equivalenceAlgorithms
27+
RANDOM_WP_METHOD,WP_METHOD
28+
-depth
29+
1
30+
-ceReruns
31+
3
32+
-Dwolfssl.version=5.7.6
33+
-roundLimit
34+
6
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
digraph g {
2+
3+
s0 [shape="circle" label="s0"];
4+
s0 -> s0 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO+"];
5+
s0 -> s0 [label="PSK_SERVER_HELLO / CLIENT_HELLO"];
6+
s0 -> s0 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
7+
s0 -> s0 [label="CHANGE_CIPHER_SPEC / CLIENT_HELLO"];
8+
s0 -> s0 [label="FINISHED / CLIENT_HELLO"];
9+
s0 -> s0 [label="APPLICATION / CLIENT_HELLO"];
10+
s0 -> s0 [label="Alert(WARNING,CLOSE_NOTIFY) / CLIENT_HELLO"];
11+
s0 -> s0 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / CLIENT_HELLO"];
12+
13+
__start0 [label="" shape="none" width="0" height="0"];
14+
__start0 -> s0;
15+
16+
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
digraph g {
2+
3+
s0 [shape="circle" label="s0"];
4+
s1 [shape="circle" label="s1"];
5+
s2 [shape="circle" label="s2"];
6+
s3 [shape="circle" label="s3"];
7+
s0 -> s2 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO+"];
8+
s0 -> s2 [label="PSK_SERVER_HELLO / CLIENT_HELLO"];
9+
s0 -> s1 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
10+
s0 -> s2 [label="CHANGE_CIPHER_SPEC / CLIENT_HELLO"];
11+
s0 -> s2 [label="FINISHED / CLIENT_HELLO"];
12+
s0 -> s3 [label="APPLICATION / CLIENT_HELLO"];
13+
s0 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / CLIENT_HELLO"];
14+
s0 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / CLIENT_HELLO"];
15+
s1 -> s1 [label="HELLO_VERIFY_REQUEST / SOCKET_CLOSED"];
16+
s1 -> s1 [label="PSK_SERVER_HELLO / SOCKET_CLOSED"];
17+
s1 -> s1 [label="SERVER_HELLO_DONE / SOCKET_CLOSED"];
18+
s1 -> s1 [label="CHANGE_CIPHER_SPEC / SOCKET_CLOSED"];
19+
s1 -> s1 [label="FINISHED / SOCKET_CLOSED"];
20+
s1 -> s1 [label="APPLICATION / SOCKET_CLOSED"];
21+
s1 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / SOCKET_CLOSED"];
22+
s1 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / SOCKET_CLOSED"];
23+
s2 -> s2 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
24+
s2 -> s2 [label="PSK_SERVER_HELLO / TIMEOUT"];
25+
s2 -> s2 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
26+
s2 -> s2 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
27+
s2 -> s2 [label="FINISHED / TIMEOUT"];
28+
s2 -> s2 [label="APPLICATION / TIMEOUT"];
29+
s2 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
30+
s2 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
31+
s3 -> s2 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO"];
32+
s3 -> s2 [label="PSK_SERVER_HELLO / TIMEOUT"];
33+
s3 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
34+
s3 -> s2 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
35+
s3 -> s2 [label="FINISHED / TIMEOUT"];
36+
s3 -> s3 [label="APPLICATION / TIMEOUT"];
37+
s3 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
38+
s3 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
39+
40+
__start0 [label="" shape="none" width="0" height="0"];
41+
__start0 -> s0;
42+
43+
}
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
digraph g {
2+
3+
s0 [shape="circle" label="s0"];
4+
s1 [shape="circle" label="s1"];
5+
s2 [shape="circle" label="s2"];
6+
s3 [shape="circle" label="s3"];
7+
s4 [shape="circle" label="s4"];
8+
s5 [shape="circle" label="s5"];
9+
s6 [shape="circle" label="s6"];
10+
s7 [shape="circle" label="s7"];
11+
s8 [shape="circle" label="s8"];
12+
s0 -> s6 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO+"];
13+
s0 -> s4 [label="PSK_SERVER_HELLO / CLIENT_HELLO"];
14+
s0 -> s1 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
15+
s0 -> s6 [label="CHANGE_CIPHER_SPEC / CLIENT_HELLO"];
16+
s0 -> s2 [label="FINISHED / CLIENT_HELLO"];
17+
s0 -> s3 [label="APPLICATION / CLIENT_HELLO"];
18+
s0 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / CLIENT_HELLO"];
19+
s0 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / CLIENT_HELLO"];
20+
s1 -> s1 [label="HELLO_VERIFY_REQUEST / SOCKET_CLOSED"];
21+
s1 -> s1 [label="PSK_SERVER_HELLO / SOCKET_CLOSED"];
22+
s1 -> s1 [label="SERVER_HELLO_DONE / SOCKET_CLOSED"];
23+
s1 -> s1 [label="CHANGE_CIPHER_SPEC / SOCKET_CLOSED"];
24+
s1 -> s1 [label="FINISHED / SOCKET_CLOSED"];
25+
s1 -> s1 [label="APPLICATION / SOCKET_CLOSED"];
26+
s1 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / SOCKET_CLOSED"];
27+
s1 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / SOCKET_CLOSED"];
28+
s2 -> s2 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
29+
s2 -> s2 [label="PSK_SERVER_HELLO / TIMEOUT"];
30+
s2 -> s2 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
31+
s2 -> s6 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
32+
s2 -> s2 [label="FINISHED / TIMEOUT"];
33+
s2 -> s2 [label="APPLICATION / TIMEOUT"];
34+
s2 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
35+
s2 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
36+
s3 -> s6 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO"];
37+
s3 -> s4 [label="PSK_SERVER_HELLO / TIMEOUT"];
38+
s3 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
39+
s3 -> s6 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
40+
s3 -> s2 [label="FINISHED / TIMEOUT"];
41+
s3 -> s3 [label="APPLICATION / TIMEOUT"];
42+
s3 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
43+
s3 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
44+
s4 -> s5 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
45+
s4 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
46+
s4 -> s7 [label="SERVER_HELLO_DONE / PSK_CLIENT_KEY_EXCHANGE|CHANGE_CIPHER_SPEC|FINISHED"];
47+
s4 -> s6 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
48+
s4 -> s1 [label="FINISHED / Alert(FATAL,UNEXPECTED_MESSAGE)"];
49+
s4 -> s4 [label="APPLICATION / TIMEOUT"];
50+
s4 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
51+
s4 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
52+
s5 -> s1 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
53+
s5 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
54+
s5 -> s1 [label="SERVER_HELLO_DONE / Alert(FATAL,UNEXPECTED_MESSAGE)"];
55+
s5 -> s6 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
56+
s5 -> s6 [label="FINISHED / TIMEOUT"];
57+
s5 -> s5 [label="APPLICATION / TIMEOUT"];
58+
s5 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
59+
s5 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
60+
s6 -> s1 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
61+
s6 -> s4 [label="PSK_SERVER_HELLO / TIMEOUT"];
62+
s6 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
63+
s6 -> s6 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
64+
s6 -> s2 [label="FINISHED / TIMEOUT"];
65+
s6 -> s6 [label="APPLICATION / TIMEOUT"];
66+
s6 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
67+
s6 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
68+
s7 -> s6 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
69+
s7 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
70+
s7 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
71+
s7 -> s8 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
72+
s7 -> s1 [label="FINISHED / Alert(FATAL,UNEXPECTED_MESSAGE)"];
73+
s7 -> s7 [label="APPLICATION / TIMEOUT"];
74+
s7 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
75+
s7 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
76+
s8 -> s1 [label="HELLO_VERIFY_REQUEST / Alert(FATAL,UNEXPECTED_MESSAGE)"];
77+
s8 -> s1 [label="PSK_SERVER_HELLO / Alert(FATAL,UNEXPECTED_MESSAGE)"];
78+
s8 -> s1 [label="SERVER_HELLO_DONE / Alert(FATAL,UNEXPECTED_MESSAGE)"];
79+
s8 -> s1 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
80+
s8 -> s8 [label="FINISHED / APPLICATION"];
81+
s8 -> s8 [label="APPLICATION / TIMEOUT"];
82+
s8 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
83+
s8 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
84+
85+
__start0 [label="" shape="none" width="0" height="0"];
86+
__start0 -> s0;
87+
88+
}
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
digraph g {
2+
3+
s0 [shape="circle" label="s0"];
4+
s1 [shape="circle" label="s1"];
5+
s2 [shape="circle" label="s2"];
6+
s3 [shape="circle" label="s3"];
7+
s4 [shape="circle" label="s4"];
8+
s5 [shape="circle" label="s5"];
9+
s6 [shape="circle" label="s6"];
10+
s7 [shape="circle" label="s7"];
11+
s8 [shape="circle" label="s8"];
12+
s9 [shape="circle" label="s9"];
13+
s0 -> s6 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO+"];
14+
s0 -> s4 [label="PSK_SERVER_HELLO / CLIENT_HELLO"];
15+
s0 -> s1 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
16+
s0 -> s9 [label="CHANGE_CIPHER_SPEC / CLIENT_HELLO"];
17+
s0 -> s2 [label="FINISHED / CLIENT_HELLO"];
18+
s0 -> s3 [label="APPLICATION / CLIENT_HELLO"];
19+
s0 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / CLIENT_HELLO"];
20+
s0 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / CLIENT_HELLO"];
21+
s1 -> s1 [label="HELLO_VERIFY_REQUEST / SOCKET_CLOSED"];
22+
s1 -> s1 [label="PSK_SERVER_HELLO / SOCKET_CLOSED"];
23+
s1 -> s1 [label="SERVER_HELLO_DONE / SOCKET_CLOSED"];
24+
s1 -> s1 [label="CHANGE_CIPHER_SPEC / SOCKET_CLOSED"];
25+
s1 -> s1 [label="FINISHED / SOCKET_CLOSED"];
26+
s1 -> s1 [label="APPLICATION / SOCKET_CLOSED"];
27+
s1 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / SOCKET_CLOSED"];
28+
s1 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / SOCKET_CLOSED"];
29+
s2 -> s2 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
30+
s2 -> s2 [label="PSK_SERVER_HELLO / TIMEOUT"];
31+
s2 -> s2 [label="SERVER_HELLO_DONE / CLIENT_HELLO"];
32+
s2 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
33+
s2 -> s2 [label="FINISHED / TIMEOUT"];
34+
s2 -> s2 [label="APPLICATION / TIMEOUT"];
35+
s2 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
36+
s2 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
37+
s3 -> s6 [label="HELLO_VERIFY_REQUEST / CLIENT_HELLO"];
38+
s3 -> s4 [label="PSK_SERVER_HELLO / TIMEOUT"];
39+
s3 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
40+
s3 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
41+
s3 -> s2 [label="FINISHED / TIMEOUT"];
42+
s3 -> s3 [label="APPLICATION / TIMEOUT"];
43+
s3 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
44+
s3 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
45+
s4 -> s5 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
46+
s4 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
47+
s4 -> s7 [label="SERVER_HELLO_DONE / PSK_CLIENT_KEY_EXCHANGE|CHANGE_CIPHER_SPEC|FINISHED"];
48+
s4 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
49+
s4 -> s1 [label="FINISHED / Alert(FATAL,UNEXPECTED_MESSAGE)"];
50+
s4 -> s4 [label="APPLICATION / TIMEOUT"];
51+
s4 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
52+
s4 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
53+
s5 -> s1 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
54+
s5 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
55+
s5 -> s1 [label="SERVER_HELLO_DONE / Alert(FATAL,UNEXPECTED_MESSAGE)"];
56+
s5 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
57+
s5 -> s9 [label="FINISHED / TIMEOUT"];
58+
s5 -> s5 [label="APPLICATION / TIMEOUT"];
59+
s5 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
60+
s5 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
61+
s6 -> s1 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
62+
s6 -> s4 [label="PSK_SERVER_HELLO / TIMEOUT"];
63+
s6 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
64+
s6 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
65+
s6 -> s2 [label="FINISHED / TIMEOUT"];
66+
s6 -> s6 [label="APPLICATION / TIMEOUT"];
67+
s6 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
68+
s6 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
69+
s7 -> s6 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
70+
s7 -> s1 [label="PSK_SERVER_HELLO / TIMEOUT"];
71+
s7 -> s1 [label="SERVER_HELLO_DONE / TIMEOUT"];
72+
s7 -> s8 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
73+
s7 -> s1 [label="FINISHED / Alert(FATAL,UNEXPECTED_MESSAGE)"];
74+
s7 -> s7 [label="APPLICATION / TIMEOUT"];
75+
s7 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
76+
s7 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
77+
s8 -> s1 [label="HELLO_VERIFY_REQUEST / Alert(FATAL,UNEXPECTED_MESSAGE)"];
78+
s8 -> s1 [label="PSK_SERVER_HELLO / Alert(FATAL,UNEXPECTED_MESSAGE)"];
79+
s8 -> s1 [label="SERVER_HELLO_DONE / Alert(FATAL,UNEXPECTED_MESSAGE)"];
80+
s8 -> s1 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
81+
s8 -> s8 [label="FINISHED / APPLICATION"];
82+
s8 -> s8 [label="APPLICATION / TIMEOUT"];
83+
s8 -> s1 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
84+
s8 -> s1 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
85+
s9 -> s9 [label="HELLO_VERIFY_REQUEST / TIMEOUT"];
86+
s9 -> s9 [label="PSK_SERVER_HELLO / TIMEOUT"];
87+
s9 -> s9 [label="SERVER_HELLO_DONE / TIMEOUT"];
88+
s9 -> s9 [label="CHANGE_CIPHER_SPEC / TIMEOUT"];
89+
s9 -> s9 [label="FINISHED / TIMEOUT"];
90+
s9 -> s9 [label="APPLICATION / TIMEOUT"];
91+
s9 -> s9 [label="Alert(WARNING,CLOSE_NOTIFY) / TIMEOUT"];
92+
s9 -> s9 [label="Alert(FATAL,UNEXPECTED_MESSAGE) / TIMEOUT"];
93+
94+
__start0 [label="" shape="none" width="0" height="0"];
95+
__start0 -> s0;
96+
97+
}

0 commit comments

Comments
 (0)